예제 #1
0
        public void Apply_Equals_FiltersEmptyOrNullValues(GridFilterCase filterCase)
        {
            StringFilter filter = new StringFilter {
                Method = "equals", Values = ""
            };
            Expression <Func <GridModel, String?> > expression = (model) => model.Name;

            filter.Case = filterCase;

            IQueryable <GridModel> items = new[]
            {
                new GridModel {
                    Name = ""
                },
                new GridModel {
                    Name = null
                },
                new GridModel {
                    Name = "test"
                },
                new GridModel {
                    Name = "Test"
                },
                new GridModel {
                    Name = "Test2"
                }
            }.AsQueryable();

            IQueryable expected = items.Where(model => String.IsNullOrEmpty(model.Name));
            IQueryable actual   = items.Where(expression, filter);

            Assert.Equal(expected, actual);
        }
예제 #2
0
        public void Case_Set()
        {
            GridFilterCase actual = new EnumerableFilter <StringFilter> {
                Case = GridFilterCase.Upper
            }.Case;
            GridFilterCase expected = GridFilterCase.Upper;

            Assert.Equal(expected, actual);
        }
예제 #3
0
        public void Filterable_SetsCase(GridFilterCase?current, GridFilterCase filterCace)
        {
            foreach (IGridColumn column in htmlGrid.Grid.Columns)
            {
                column.Filter.Case = current;
            }

            htmlGrid.Filterable(GridFilterCase.Lower);

            foreach (IGridColumn actual in htmlGrid.Grid.Columns)
            {
                Assert.Equal(filterCace, actual.Filter.Case);
            }
        }
예제 #4
0
        public static IHtmlGrid <T> Filterable <T>(this IHtmlGrid <T> html, GridFilterCase filterCase)
        {
            foreach (IGridColumn column in html.Grid.Columns)
            {
                if (column.Filter.IsEnabled == null)
                {
                    column.Filter.IsEnabled = true;
                }

                if (column.Filter.Case == null)
                {
                    column.Filter.Case = filterCase;
                }
            }

            return(html);
        }
예제 #5
0
 protected AGridFilter()
 {
     Case = GridFilterCase.Original;
 }
예제 #6
0
        public static IGridColumn <T, TValue> Filterable <T, TValue>(this IGridColumn <T, TValue> column, GridFilterCase filterCase)
        {
            column.Filter.IsEnabled ??= true;
            column.Filter.Case = filterCase;

            return(column);
        }