[#111,filter/geo][m]: geo filter support - filter editor working though not sure actual query is working (!).

* Extensive refactoring of Model.Query and View.FilterEditor to do this cleanly (geo_distance and term treated similarly now)
This commit is contained in:
Rufus Pollock
2012-06-15 10:51:13 +01:00
parent 952c85a912
commit 8fe04ddd4f
5 changed files with 160 additions and 35 deletions

View File

@@ -150,6 +150,33 @@ test('Query', function () {
});
test('Query.addFilter', function () {
var query = new recline.Model.Query();
query.addFilter('term', 'xyz');
var exp = {
term: {
xyz: '',
_field: 'xyz',
_type: 'term'
}
};
deepEqual(exp, query.get('filters')[0]);
query.addFilter('geo_distance', 'xyz');
var exp = {
geo_distance: {
distance: '10km',
xyz: {
lon: 0,
lat: 0
},
_field: 'xyz',
_type: 'geo_distance'
}
};
deepEqual(exp, query.get('filters')[1]);
});
test('Query.addTermFilter', function () {
var query = new recline.Model.Query();
query.addTermFilter('xyz', 'this-value');
deepEqual({term: {xyz: 'this-value'}}, query.get('filters')[0]);