示例#1
0
 def test_within(self):
     with CaptureQueriesContext(connection) as captured_queries:
         Person.objects.get(pk=self.person_pk)
         self.assertEqual(len(captured_queries), 1)
         self.assertIn(self.person_pk, captured_queries[0]['sql'])
示例#2
0
 def test_failure(self):
     with self.assertRaises(TypeError):
         with CaptureQueriesContext(connection):
             raise TypeError
示例#3
0
def test_lbheartbeat(dockerflow_middleware, rf, dockerflow_enabled):
    queries = CaptureQueriesContext(connection)
    request = rf.get("/__lbheartbeat__")
    with queries:
        response = dockerflow_middleware.process_request(request)
        assert response.status_code == 200
示例#4
0
 def test_makes_no_db_queries(self, client):
     queries = CaptureQueriesContext(connection)
     with queries:
         res = client.get("/api/v1/classify_client/")
         assert res.status_code == 200
     assert len(queries) == 0
示例#5
0
 def __enter__(self):
     self.capturer = CaptureQueriesContext(self.conn)
     self.capturer.__enter__()
     return self
示例#6
0
 def test_exists_join_optimization_disabled(self):
     with mock.patch.object(connection.features, 'supports_foreign_keys', False), \
             CaptureQueriesContext(connection) as query:
         self.article.publications.exists()
     self.assertIn('JOIN', query[0]['sql'])
示例#7
0
 def test_exists_join_optimization(self):
     with CaptureQueriesContext(connection) as query:
         self.article.publications.exists()
     self.assertNotIn('JOIN', query[0]['sql'])
     self.assertIs(self.nullable_target_article.publications.exists(),
                   False)
示例#8
0
 def test_count_join_optimization(self):
     with CaptureQueriesContext(connection) as query:
         self.article.publications.count()
     self.assertNotIn('JOIN', query[0]['sql'])
     self.assertEqual(self.nullable_target_article.publications.count(), 0)
 def test_mysql_text_to_traditional(self):
     with CaptureQueriesContext(connection) as captured_queries:
         Tag.objects.filter(name='test').explain(format='text')
     self.assertEqual(len(captured_queries), 1)
     self.assertIn('FORMAT=TRADITIONAL', captured_queries[0]['sql'])
示例#10
0
def test_lbheartbeat_makes_no_db_queries(client):
    queries = CaptureQueriesContext(connection)
    with queries:
        res = client.get('/__lbheartbeat__')
        assert res.status_code == 200
    assert len(queries) == 0