Exemplo n.º 1
0
        protected override NBiConstraint InstantiateConstraint()
        {
            var filter = InstantiateFilter();
            var ctr    = new SomeRowsConstraint(filter);

            return(ctr);
        }
Exemplo n.º 2
0
        public void Matches_AllValidatePredicate_True()
        {
            var rs = new ResultSet();

            rs.Load(new[] { new object[] { "a", -1 }, new object[] { "b", -2 }, new object[] { "c", -3 } });

            var predicate = new Mock <IPredicateInfo>();

            predicate.SetupGet(p => p.ColumnType).Returns(ColumnType.Numeric);
            predicate.SetupGet(p => p.ComparerType).Returns(ComparerType.LessThan);
            predicate.SetupGet(p => p.Operand).Returns("#1");
            predicate.As <IReferencePredicateInfo>().SetupGet(p => p.Reference).Returns((object)0);

            var factory = new PredicateFilterFactory();
            var filter  = factory.Instantiate
                          (
                new List <IColumnAlias>()
                , new List <IColumnExpression>()
                , predicate.Object
                          );

            var someRowCtr = new SomeRowsConstraint(filter);

            Assert.That(someRowCtr.Matches(rs));
        }
Exemplo n.º 3
0
        public void Matches_AllValidatePredicate_True()
        {
            var rs = new ResultSet();

            rs.Load(new[] { new object[] { "a", -1 }, new object[] { "b", -2 }, new object[] { "c", -3 } });

            var predicate = new Mock <ReferencePredicateArgs>();

            predicate.SetupGet(p => p.ColumnType).Returns(ColumnType.Numeric);
            predicate.SetupGet(p => p.ComparerType).Returns(ComparerType.LessThan);
            predicate.SetupGet(p => p.Reference).Returns(new LiteralScalarResolver <decimal>(0));

            var predication = new Mock <PredicationArgs>();

            predication.SetupGet(p => p.Identifier).Returns(new ColumnOrdinalIdentifier(1));
            predication.SetupGet(p => p.Predicate).Returns(predicate.Object);

            var factory = new ResultSetFilterFactory(null);
            var filter  = factory.Instantiate
                          (
                predication.Object
                , Context.None
                          );

            var someRowCtr = new SomeRowsConstraint(filter);

            Assert.That(someRowCtr.Matches(rs));
        }
Exemplo n.º 4
0
        public void Matches_NoneValidatePredicate_False()
        {
            var rs = new ResultSet();

            rs.Load(new[] { new object[] { "a", 1 }, new object[] { "b", 2 }, new object[] { "c", 3 } });

            var predicate = new Mock <IPredicateInfo>();

            predicate.SetupGet(p => p.ColumnType).Returns(ColumnType.Numeric);
            predicate.SetupGet(p => p.ComparerType).Returns(ComparerType.LessThan);
            predicate.SetupGet(p => p.Operand).Returns(new ColumnOrdinalIdentifier(1));
            predicate.As <IReferencePredicateInfo>().SetupGet(p => p.Reference).Returns((object)0);

            var factory = new ResultSetFilterFactory(null);
            var filter  = factory.Instantiate
                          (
                new List <IColumnAlias>()
                , new List <IColumnExpression>()
                , predicate.Object
                          );

            var someRowCtr = new SomeRowsConstraint(filter);

            Assert.That(someRowCtr.Matches(rs), Is.False);
        }
Exemplo n.º 5
0
        public void Matches_AllValidatePredicate_True()
        {
            var rs = new ResultSet();

            rs.Load(new[] { new object[] { "a", -1 }, new object[] { "b", -2 }, new object[] { "c", -3 } });

            var predicate = Mock.Of <IPredicateInfo>
                            (
                p => p.ColumnType == ColumnType.Numeric &&
                p.ComparerType == ComparerType.LessThan &&
                p.Operand == "#1" &&
                p.Reference == (object)0
                            );

            var factory = new PredicateFilterFactory();
            var filter  = factory.Instantiate
                          (
                new List <IColumnAlias>()
                , new List <IColumnExpression>()
                , predicate
                          );

            var someRowCtr = new SomeRowsConstraint(filter);

            Assert.That(someRowCtr.Matches(rs));
        }
Exemplo n.º 6
0
        public void Matches_ResultSetService_CallToExecuteOnce()
        {
            var resultSet = new ResultSet();

            resultSet.Load("a;b;1");

            var serviceMock = new Mock <IResultSetService>();

            serviceMock.Setup(s => s.Execute())
            .Returns(resultSet);
            var service = serviceMock.Object;

            var alias     = Mock.Of <IColumnAlias>(v => v.Column == 2 && v.Name == "Value");
            var predicate = new Mock <ReferencePredicateArgs>();

            predicate.SetupGet(p => p.ColumnType).Returns(ColumnType.Numeric);
            predicate.SetupGet(p => p.ComparerType).Returns(ComparerType.Equal);
            predicate.SetupGet(p => p.Reference).Returns(new LiteralScalarResolver <decimal>(1));

            var predication = new Mock <PredicationArgs>();

            predication.SetupGet(p => p.Identifier).Returns(new ColumnNameIdentifier("Value"));
            predication.SetupGet(p => p.Predicate).Returns(predicate.Object);

            var factory = new ResultSetFilterFactory(null);
            var filter  = factory.Instantiate
                          (
                predication.Object
                , new Context(null, new List <IColumnAlias>()
            {
                alias
            }, Array.Empty <IColumnExpression>())
                          );

            var someRowCtr = new SomeRowsConstraint(filter);

            //Method under test
            someRowCtr.Matches(service);

            //Test conclusion
            serviceMock.Verify(s => s.Execute(), Times.Once());
        }
Exemplo n.º 7
0
        public void Matches_ResultSetService_CallToExecuteOnce()
        {
            var resultSet = new ResultSet();

            resultSet.Load("a;b;1");

            var serviceMock = new Mock <IResultSetService>();

            serviceMock.Setup(s => s.Execute())
            .Returns(resultSet);
            var service = serviceMock.Object;

            var alias     = Mock.Of <IColumnAlias>(v => v.Column == 2 && v.Name == "Value");
            var predicate = Mock.Of <IPredicateInfo>
                            (
                p => p.ColumnType == ColumnType.Numeric &&
                p.ComparerType == ComparerType.Equal &&
                p.Operand == "Value" &&
                p.Reference == (object)1
                            );

            var factory = new PredicateFilterFactory();
            var filter  = factory.Instantiate
                          (
                new List <IColumnAlias>()
            {
                alias
            }
                , new List <IColumnExpression>()
            {
            }
                , predicate
                          );

            var someRowCtr = new SomeRowsConstraint(filter);

            //Method under test
            someRowCtr.Matches(service);

            //Test conclusion
            serviceMock.Verify(s => s.Execute(), Times.Once());
        }