public IEnumerable <CW_ElementMinimal> GetMinimal(IEnumerable <string> documentTitles, IEnumerable <Filter> filters, IEnumerable <string> categoryNames, FilterType filterType) { var documents = new List <Document>(); var document = GetDocument(); foreach (var documentTitle in documentTitles) { var doc = GetDocument(documentTitle); documents.Add(doc); } var filterResult = FilterExecutor.RunFilters(document, documents, filters, categoryNames, filterType); var cwElements = new List <CW_ElementMinimal>(); foreach (var element in filterResult) { CW_ElementMinimal cwElement = new CW_ElementMinimal { DocumentTitle = element.Document.Title, Id = element.Id.IntegerValue, Name = element.Name, UniqueId = element.UniqueId }; cwElements.Add(cwElement); } return(cwElements); }
public void Execute_ActingOnAFilter_CallsExecute() { var filter = new TestFilter(); var source = new List <Customer>().AsQueryable(); var executor = new FilterExecutor(); executor.Execute(filter, source); Expect(filter.ExecuteCalled, Is.True); }
public JsonResult GetData([FromBody] DataTableSettings settings) { List <Object> data = MockData.MockRows; IEnumerable <FilterExecutor> filterExecutors = settings.filters.Select(filter => FilterExecutor.Factory(filter)); IEnumerable <Object> filteredData = filterExecutors.Execute(data); IEnumerable <Object> sortedData = settings.sorting.SortData(filteredData); IEnumerable <Object> pagedData = sortedData.Skip(settings.paging.size * settings.paging.pageNumber) .Take(settings.paging.size); settings.rows = pagedData.ToList(); return(new JsonResult(JsonConvert.SerializeObject(settings))); }