[#66,filters][s]: memory backend support for filters.
This commit is contained in:
parent
1eb7df9a7c
commit
36548ceffc
@ -120,6 +120,12 @@ this.recline.Backend = this.recline.Backend || {};
|
||||
var numRows = queryObj.size;
|
||||
var start = queryObj.from;
|
||||
results = this.datasets[model.id].documents;
|
||||
_.each(queryObj.filters, function(filter) {
|
||||
results = _.filter(results, function(doc) {
|
||||
var fieldId = _.keys(filter.term)[0];
|
||||
return (doc[fieldId] == filter.term[fieldId]);
|
||||
});
|
||||
});
|
||||
// not complete sorting!
|
||||
_.each(queryObj.sort, function(sortObj) {
|
||||
var fieldName = _.keys(sortObj)[0];
|
||||
|
||||
@ -79,7 +79,17 @@ test('Memory Backend: query sort', function () {
|
||||
});
|
||||
});
|
||||
|
||||
test('Memory Backend: filters', function () {
|
||||
var dataset = makeBackendDataset();
|
||||
dataset.queryState.addTermFilter('country', 'UK');
|
||||
dataset.query().then(function() {
|
||||
equal(dataset.currentDocuments.length, 3);
|
||||
deepEqual(dataset.currentDocuments.pluck('country'), ['UK', 'UK', 'UK']);
|
||||
});
|
||||
});
|
||||
|
||||
test('Memory Backend: facet', function () {
|
||||
console.log('here');
|
||||
var dataset = makeBackendDataset();
|
||||
dataset.queryState.addFacet('country');
|
||||
dataset.query().then(function() {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user