示例#1
0
        public void NullGroups_DoentCallRenderer()
        {
            var renderer = new Mock <IExpressionsRenderer>();
            var searcher = new Mock <IExpressionSearcher>();

            searcher.Setup(x => x.SearchGroups(It.IsAny <string>()))
            .Returns((IEnumerable <VariablesExpression>)null);

            var former = new CanonicalFormulaFormer(searcher.Object, renderer.Object);

            Assert.Throws <InvalidFormulaException>(() => former.Transform(string.Empty));
            renderer.Verify(x => x.Render(null), Times.Never());
        }
示例#2
0
        public void SearcherNotValidator_CallSearch()
        {
            var searcher = new Mock <IExpressionSearcher>();
            var renderer = new Mock <IExpressionsRenderer>();

            renderer.Setup(x => x.Render(It.IsAny <IEnumerable <VariablesExpression> >()))
            .Returns(string.Empty);

            var former = new CanonicalFormulaFormer(searcher.Object, renderer.Object);

            former.Transform(string.Empty);
            searcher.Verify(x => x.SearchGroups(It.IsAny <string>()), Times.AtLeastOnce());
        }
示例#3
0
        public void InvalidFormula_ReturnsNull()
        {
            var searcher = new Mock <IExpressionSearcher>();

            searcher.As <IFormulaValidator>()
            .Setup(x => x.Validate(It.IsAny <string>()))
            .Returns(false);

            var former = new CanonicalFormulaFormer(searcher.Object, Mock.Of <IExpressionsRenderer>());
            var result = former.Transform(string.Empty);

            Assert.IsNull(result);
        }
示例#4
0
        public void InvalidFormula_DoesntCallSearch()
        {
            var searcher = new Mock <IExpressionSearcher>();

            searcher.As <IFormulaValidator>()
            .Setup(x => x.Validate(It.IsAny <string>()))
            .Returns(false)
            .Verifiable();

            var former = new CanonicalFormulaFormer(searcher.Object, Mock.Of <IExpressionsRenderer>());

            var result = former.Transform(string.Empty);

            Assert.IsNull(result);
            searcher.Verify();
            searcher.Verify(x => x.SearchGroups(It.IsAny <string>()), Times.Never());
        }
示例#5
0
        public void NullRenderResult_ThrowsInvalidOperationException()
        {
            var former = new CanonicalFormulaFormer(Mock.Of <IExpressionSearcher>(), Mock.Of <IExpressionsRenderer>());

            Assert.Throws <InvalidFormulaException>(() => former.Transform(string.Empty));
        }