Exemplo n.º 1
0
        public void Create_NullableShortNotEqual_Expression()
        {
            // arrange
            var value = new ObjectValueNode(
                new ObjectFieldNode("barShort_not",
                                    new IntValueNode(12)));

            FooNullableFilterType fooNullableType = CreateType(new FooNullableFilterType());

            // act
            var context = new QueryableFilterVisitorContext(
                fooNullableType, typeof(FooNullable), TypeConversion.Default, true);

            QueryableFilterVisitor.Default.Visit(value, context);
            Func <FooNullable, bool> func = context.CreateFilter <FooNullable>().Compile();

            // assert
            var a = new FooNullable {
                BarShort = 13
            };

            Assert.True(func(a));

            var b = new FooNullable {
                BarShort = 12
            };

            Assert.False(func(b));

            var c = new FooNullable {
                BarShort = null
            };

            Assert.True(func(c));
        }
Exemplo n.º 2
0
        public void Create_NullableBooleanEqual_Expression()
        {
            // arrange
            var value = new ObjectValueNode(
                new ObjectFieldNode("bar",
                                    new BooleanValueNode(true)));

            FooNullableFilterType fooNullableType = CreateType(new FooNullableFilterType());

            // act
            var filter = new QueryableFilterVisitorContext(
                fooNullableType, typeof(FooNullable), TypeConversion.Default, true);

            QueryableFilterVisitor.Default.Visit(value, filter);
            Func <FooNullable, bool> func = filter.CreateFilter <FooNullable>().Compile();

            // assert
            var a = new FooNullable {
                Bar = true
            };

            Assert.True(func(a));

            var b = new FooNullable {
                Bar = false
            };

            Assert.False(func(b));

            var c = new FooNullable {
                Bar = null
            };

            Assert.False(func(c));
        }
Exemplo n.º 3
0
        public void Create_NullableShortIn_Expression()
        {
            // arrange
            var value = new ObjectValueNode(
                new ObjectFieldNode("barShort_in",
                                    new ListValueNode(new[]
            {
                new IntValueNode(13),
                new IntValueNode(14)
            }))
                );

            FooNullableFilterType fooNullableType = CreateType(new FooNullableFilterType());

            // act
            var context = new QueryableFilterVisitorContext(
                fooNullableType,
                typeof(FooNullable),
                MockFilterConvention.Default.GetExpressionDefinition(),
                TypeConversion.Default,
                true);

            QueryableFilterVisitor.Default.Visit(value, context);
            Func <FooNullable, bool> func = context.CreateOrAssert <FooNullable>().Compile();

            // assert
            var a = new FooNullable {
                BarShort = 13
            };

            Assert.True(func(a));

            var b = new FooNullable {
                BarShort = 12
            };

            Assert.False(func(b));

            var c = new FooNullable {
                BarShort = null
            };

            Assert.False(func(c));
        }