Exemple #1
0
        public void AssertOperation <T>(
            ObjectValueNode value,
            FilterKind kind,
            FilterOperationKind operationKind,
            FilterOperationHandler handler)
        {
            FilterInputType <T> fooType = CreateType(new FilterInputType <T>());

            var helper = ExpressionVisitorMock.Create(handler);

            FilterExpressionVisitorDefinition convention =
                new MockFilterConvention(
                    x => x.UseDefault()
                    .UseExpressionVisitor()
                    .UseDefault()
                    .Kind(kind)
                    .Operation(operationKind)
                    .Handler(helper.FilterOperationHandler))
                .GetExpressionDefinition();

            // act
            var filter = new QueryableFilterVisitorContext(
                fooType,
                typeof(T),
                convention,
                TypeConversion.Default,
                true);

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

            // assert
            Assert.Equal(1, helper.CallCount(handler));
        }
Exemple #2
0
 public static ExpressionVisitorMock Create(FilterOperationHandler handler) =>
 new ExpressionVisitorMock().Setup(handler);
Exemple #3
0
 public int CallCount(FilterOperationHandler _) => filterOperationCallCounter;
Exemple #4
0
 public ExpressionVisitorMock Setup(FilterOperationHandler handler)
 {
     filterOperationCallCounter = 0;
     filterOperationHandler     = handler;
     return(this);
 }
 public IFilterExpressionOperationDescriptor Handler(FilterOperationHandler handler)
 {
     Definition.Handler = handler;
     return(this);
 }