Exemplo n.º 1
0
 def test_bad_field_lookup(self, orm_models):
     query = Query("app.model", [QueryField("fa__count__bob")], [])
     bound_query = BoundQuery.bind(query, orm_models)
     assert [f.path for f in bound_query.fields] == []
Exemplo n.º 2
0
 def test_bad_fk_field_aggregate(self, orm_models):
     query = Query("app.model", [QueryField("tom__jones__yata")], [])
     bound_query = BoundQuery.bind(query, orm_models)
     assert [f.path for f in bound_query.fields] == []
 def test_from_request_field_no_priority(self):
     q = Query.from_request("app.model", "fn+", [])
     assert q == Query("app.model", [QueryField("fn")], [])
Exemplo n.º 4
0
 def test_from_request_field_pivoted(self):
     q = Query.from_request("app.model", "&fn", QueryDict(""))
     assert q == Query("app.model", [QueryField("fn", True)], [])
Exemplo n.º 5
0
 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] == []
Exemplo n.º 6
0
 def get_product_flat(*args, **kwargs):
     query = Query.from_request("core.Product", *args)
     bound_query = BoundQuery.bind(query, orm_models)
     data = get_results(req, bound_query, orm_models)
     return flatten_table(bound_query.fields, data["rows"])
Exemplo n.º 7
0
 def test_from_request_filter_no_lookup(self):
     q = Query.from_request("app.model", "", QueryDict("joe=tom"))
     assert q == Query("app.model", [], [])
Exemplo n.º 8
0
 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] == []
Exemplo n.º 9
0
 def test_from_request_with_missing(self):
     q = Query.from_request("app.model", ",,", QueryDict(""))
     assert q == Query("app.model", [], [])
Exemplo n.º 10
0
 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", "")])
Exemplo n.º 11
0
 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")])
Exemplo n.º 12
0
 def test_from_request_with_low_limit(self, query):
     q = Query.from_request("app.model", "fa+1,fd-0,fn",
                            QueryDict("limit=0&bob__equals=fred"))
     query.limit = 1
     assert q == query
Exemplo n.º 13
0
 def test_from_request_duplicate_field(self, query):
     q = Query.from_request("app.model", "fa+1,fd-0,fn,&fa-2",
                            QueryDict("bob__equals=fred"))
     assert q == query
Exemplo n.º 14
0
 def test_aggregate(self, orm_models):
     query = Query("app.model", [QueryField("tom__jones__count")], [])
     bound_query = BoundQuery.bind(query, orm_models)
     assert [f.path
             for f in bound_query.fields] == [["tom", "jones", "count"]]
Exemplo n.º 15
0
 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")])
Exemplo n.º 16
0
 def test_piovt(self, orm_models):
     query = Query("app.model", [QueryField("tom__jones", pivoted=True)],
                   [])
     bound_query = BoundQuery.bind(query, orm_models)
     assert [f.pivoted for f in bound_query.fields] == [True]
Exemplo n.º 17
0
 def test_from_request_filter_no_name(self):
     q = Query.from_request("app.model", "", QueryDict("=123"))
     assert q == Query("app.model", [], [])
Exemplo n.º 18
0
 def test_fk(self, orm_models):
     query = Query("app.model", [QueryField("tom")], [])
     bound_query = BoundQuery.bind(query, orm_models)
     assert [f.path for f in bound_query.fields] == []
Exemplo n.º 19
0
 def test_from_request_field_no_name(self):
     q = Query.from_request("app.model", "+2", QueryDict(""))
     assert q == Query("app.model", [QueryField("", False, ASC, 2)], [])
Exemplo n.º 20
0
 def helper(queries, *args, **kwargs):
     query = Query.from_request("core.Product", *args, **kwargs)
     bound_query = BoundQuery.bind(query, orm_models)
     with django_assert_num_queries(queries):
         data = get_results(req, bound_query, orm_models)
         return flatten_table(bound_query.fields, data["rows"])
Exemplo n.º 21
0
 def test_from_request_field_bad_priority(self):
     q = Query.from_request("app.model", "fn+x", QueryDict(""))
     assert q == Query("app.model", [QueryField("fn")], [])
Exemplo n.º 22
0
 def test_from_request(self, query):
     q = Query.from_request("app.model", "fa+1,fd-0,fn",
                            [("bob__equals", "fred")])
     assert q == query
Exemplo n.º 23
0
 def test_from_request_with_low_limit(self, query):
     q = Query.from_request("app.model", "fa+1,fd-0,fn",
                            [("limit", "0"), ("bob__equals", "fred")])
     query.limit = 1
     assert q == query