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 singleRowCtr = new AllRowsConstraint(filter); Assert.That(singleRowCtr.Matches(rs), Is.True); }
protected override NBiConstraint InstantiateConstraint() { var filter = InstantiateFilter(); var ctr = new AllRowsConstraint(filter); return(ctr); }
protected NBiConstraint InstantiateConstraint() { AllRowsConstraint ctr; var expressions = new List <IColumnExpression>(); if (ConstraintXml.Expression != null) { expressions.Add(ConstraintXml.Expression); } if (ConstraintXml.Predicate.Reference != null) { ConstraintXml.Predicate.Reference = EvaluatePotentialVariable(ConstraintXml.Predicate.Reference); } var factory = new PredicateFilterFactory(); var filter = factory.Instantiate ( ConstraintXml.Aliases , expressions , ConstraintXml.Predicate ); ctr = new AllRowsConstraint(filter); return(ctr); }
public void Matches_SingleValidatePredicate_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("#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 singleRowCtr = new AllRowsConstraint(filter); Assert.That(singleRowCtr.Matches(rs), Is.False); }
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 singleRowCtr = new AllRowsConstraint(filter); Assert.That(singleRowCtr.Matches(rs), Is.True); }
public void Matches_SqlCommand_CallToResultSetBuilderOnce() { var resultSet = new ResultSet(); resultSet.Load("a;b;1"); var cmd = new SqlCommand(); var rsbMock = new Mock <ResultSetBuilder>(); rsbMock.Setup(engine => engine.Build(It.IsAny <object>())) .Returns(resultSet); var rsb = rsbMock.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.Name == "Value" && p.Reference == (object)1 ); var factory = new PredicateFilterFactory(); var filter = factory.Instantiate ( new List <IColumnAlias>() { alias } , new List <IColumnExpression>() { } , predicate ); var rowCount = new AllRowsConstraint(filter) { ResultSetBuilder = rsb }; rowCount.ResultSetBuilder = rsb; //Method under test rowCount.Matches(cmd); //Test conclusion rsbMock.Verify(engine => engine.Build(It.IsAny <object>()), Times.Once()); }
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 rowCount = new AllRowsConstraint(filter); //Method under test rowCount.Matches(service); //Test conclusion serviceMock.Verify(s => s.Execute(), Times.Once()); }
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 rowCount = new AllRowsConstraint(filter); //Method under test rowCount.Matches(service); //Test conclusion serviceMock.Verify(s => s.Execute(), Times.Once()); }
protected NBiConstraint InstantiateConstraint() { AllRowsConstraint ctr; IResultSetFilter filter = null; var expressions = new List <IColumnExpression>(); if (ConstraintXml.Expression != null) { expressions.Add(ConstraintXml.Expression); } filter = new PredicateFilter ( ConstraintXml.Variables , expressions , ConstraintXml.Predicate ); ctr = new AllRowsConstraint(filter); return(ctr); }