public void ShouldBeSupportField() { // Given var entity = new FilterTestEntity { Field = 10 }; var filter = new EqualOperator(EntityType, Field, 10); // When var isSatisfy = filter.IsSatisfiedBy(entity); // Then Assert.IsTrue(isSatisfy); }
public void ExitComparison(QueryParser.ComparisonContext context) { var opToken = context.REL_OP(); if (opToken == null) { return; } var op = opToken.Symbol; var right = _expressions.Pop(); var left = _expressions.Pop(); BinaryOperatorExpression value = null; switch (op.Text) { case "<": value = new LessThanOperator(op.Line, op.Column, left, right); break; case "<=": value = new LessThanOrEqualOperator(op.Line, op.Column, left, right); break; case "<>": case "!=": value = new NotEqualOperator(op.Line, op.Column, left, right); break; case "==": case "=": value = new EqualOperator(op.Line, op.Column, left, right); break; case ">": value = new GreaterThanOperator(op.Line, op.Column, left, right); break; case ">=": value = new GreaterThanOrEqualOperator(op.Line, op.Column, left, right); break; } Trace.Assert(value != null, "Invalid comparison operator " + op.Text); _expressions.Push(value); }
public void ShouldBeSupportLambdaExpressionInProperty() { // Given Expression <Func <FilterTestEntity, string> > propertyExpression = item => item.StringField.ToLower(); var entity = new FilterTestEntity { StringField = "AbCd" }; var filter = new EqualOperator(EntityType, propertyExpression, "abcd"); // When var isSatisfy = filter.IsSatisfiedBy(entity); // Then Assert.IsTrue(isSatisfy); }
public void CreateExpressionTest1() { // Arrange Expression parameterExpression = Expression.Parameter(typeof(Employee), "sample"); Expression expressionProperty = Expression.Property(parameterExpression, nameof(Employee.FirstName)); Expression expressionConstant = Expression.Constant("xxx"); Expression expectedExpression = Expression.Equal(expressionProperty, expressionConstant); var _operator = new EqualOperator(); // Act Expression resultExpression = _operator.CreateExpression(expressionProperty, expressionConstant); // Assert Assert.AreEqual(expectedExpression.ToString(), resultExpression.ToString(), "Expression not correct"); }
public void ShouldBeNull() { // Given var filter = new EqualOperator(EntityType, StringField, null); var satisfyEntity = new FilterTestEntity { StringField = null }; var noSatisfyEntity = new FilterTestEntity { StringField = "NotNull" }; // When var isSatisfy = filter.IsSatisfiedBy(satisfyEntity); var isNoSatisfy = filter.IsSatisfiedBy(noSatisfyEntity); // Then Assert.IsTrue(isSatisfy); Assert.IsFalse(isNoSatisfy); }
public Bitmap Visit(EqualOperator expr) { return(ComputeFunction(expr)); }