def test_bad_filter_value(self, orm_models): query = Query( "app.model", [], [QueryFilter("num", "equals", "fred"), QueryFilter("num", "equals", 1)], ) bound_query = BoundQuery.bind(query, orm_models) assert [f.value for f in bound_query.filters] == ["fred", 1] assert [f.value for f in bound_query.valid_filters] == [1]
def query(): return Query( "app.model", [ QueryField("fa", False, ASC, 1), QueryField("fd", False, DSC, 0), QueryField("fn"), ], [QueryFilter("bob", "equals", "fred")], )
def test_filter_calculated_field(self, orm_models): query = Query("app.model", [], [QueryFilter("fn", "equals", "fred")]) bound_query = BoundQuery.bind(query, orm_models) assert [f.path for f in bound_query.filters] == []
def test_bad_filter(self, orm_models): query = Query("app.model", [], [QueryFilter("yata", "equals", "fred")]) bound_query = BoundQuery.bind(query, orm_models) assert [f.path for f in bound_query.filters] == []
def test_from_request_filter_bad_lookup(self): q = Query.from_request("app.model", "", QueryDict("joe__blah=123")) assert q == Query("app.model", [], [QueryFilter("joe", "blah", "123")])
def test_from_request_filter_no_value(self): q = Query.from_request("app.model", "", QueryDict("joe__equals=")) assert q == Query("app.model", [], [QueryFilter("joe", "equals", "")])
def test_from_request_with_related_filter(self): q = Query.from_request("app.model", "", QueryDict("bob__jones__equals=fred")) assert q == Query( "app.model", [], [QueryFilter("bob__jones", "equals", "fred")] )