public void Interpret_ExpressionIsNull_ThrowsArgumentNullException()
        {
            //Arrange
            var interpreter = new QueryFilterInterpreter();

            //Act
            //Assert
            interpreter.Interpret(null, null);
        }
        public void Interpret_EntityParameterIsNull_ThrowsArgumentNullException()
        {
            //Arrange
            var interpreter = new QueryFilterInterpreter();

            //Act
            //Assert
            interpreter.Interpret(new NotOperator(), null);
        }
Exemple #3
0
        public void Interpret_EntityParameterIsNull_ThrowsArgumentNullException()
        {
            //Arrange
            var interpreter = new QueryFilterInterpreter();

            //Act
            //Assert
            interpreter.Interpret(new NotOperator(), null);
        }
Exemple #4
0
        public void Interpret_ExpressionIsNull_ThrowsArgumentNullException()
        {
            //Arrange
            var interpreter = new QueryFilterInterpreter();

            //Act
            //Assert
            interpreter.Interpret(null, null);
        }
        public void Interpret_ExpressionIsUnknown_ThrowsArgumentException()
        {
            //Arrange
            var interpreter = new QueryFilterInterpreter();

            var expression = new NotOperator()
            {
                Operand = new UnknownCondition()
            };

            //Act
            //Assert
            interpreter.Interpret(expression, Expression.Parameter(typeof(string)));
        }
Exemple #6
0
        public void Interpret_ExpressionIsUnknown_ThrowsArgumentException()
        {
            //Arrange
            var interpreter = new QueryFilterInterpreter();

            var expression = new NotOperator()
            {
                Operand = new UnknownCondition()
            };

            //Act
            //Assert
            interpreter.Interpret(expression, Expression.Parameter(typeof(string)));
        }
        public void Interpret_GoodValues_ReturnsExpression()
        {
            //Arrange
            var interpreter = new QueryFilterInterpreter();

            var expression = new NotOperator()
            {
                Operand = new AndOperator()
                {
                    LeftOperand = new GreaterThanCondition()
                    {
                        Property = "Length",
                        Value = 0
                    },
                    RightOperand = new LessThanCondition()
                    {
                        Property = "Length",
                        Value = 6
                    }
                }
            };

            var entityParameter = Expression.Parameter(typeof(string));

            //Act
            var result = interpreter.Interpret(expression, entityParameter);

            //Assert
            Assert.AreEqual(ExpressionType.Not, result.NodeType);

            var lambda = Expression.Lambda(Expression.Convert(result, typeof(bool)), entityParameter);

            var value = lambda.Compile().DynamicInvoke("Nice");

            Assert.AreEqual(false, value);
        }
Exemple #8
0
        public void Interpret_GoodValues_ReturnsExpression()
        {
            //Arrange
            var interpreter = new QueryFilterInterpreter();

            var expression = new NotOperator()
            {
                Operand = new AndOperator()
                {
                    LeftOperand = new GreaterThanCondition()
                    {
                        Property = "Length",
                        Value    = 0
                    },
                    RightOperand = new LessThanCondition()
                    {
                        Property = "Length",
                        Value    = 6
                    }
                }
            };

            var entityParameter = Expression.Parameter(typeof(string));

            //Act
            var result = interpreter.Interpret(expression, entityParameter);

            //Assert
            Assert.AreEqual(ExpressionType.Not, result.NodeType);

            var lambda = Expression.Lambda(Expression.Convert(result, typeof(bool)), entityParameter);

            var value = lambda.Compile().DynamicInvoke("Nice");

            Assert.AreEqual(false, value);
        }