diff options
| author | Aymeric Augustin | 2013-11-09 20:06:41 +0100 |
|---|---|---|
| committer | Aymeric Augustin | 2013-11-10 10:39:42 +0100 |
| commit | b1d8b119f5d7d9531d7b93aea18de368827158ae (patch) | |
| tree | 3db93d7732593913f2c61b52290b4b97734227dc /tests | |
| parent | c4e833ad77f21419b8d8239279b4bb162d01fd8f (diff) | |
| download | django-debug-toolbar-b1d8b119f5d7d9531d7b93aea18de368827158ae.tar.bz2 | |
Normalize the way we write panel tests.
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/panels/test_logger.py | 30 | ||||
| -rw-r--r-- | tests/panels/test_sql.py | 31 |
2 files changed, 30 insertions, 31 deletions
diff --git a/tests/panels/test_logger.py b/tests/panels/test_logger.py index 477d100..9a3ac37 100644 --- a/tests/panels/test_logger.py +++ b/tests/panels/test_logger.py @@ -10,25 +10,26 @@ from ..base import BaseTestCase class LoggingPanelTestCase(BaseTestCase): + def setUp(self): + super(LoggingPanelTestCase, self).setUp() + self.panel = self.toolbar.get_panel(LoggingPanel) + self.logger = logging.getLogger(__name__) + def test_happy_case(self): - logger = logging.getLogger(__name__) - logger.info('Nothing to see here, move along!') + self.logger.info('Nothing to see here, move along!') - logging_panel = self.toolbar.get_panel(LoggingPanel) - logging_panel.process_response(None, None) - records = logging_panel.get_stats()['records'] + self.panel.process_response(self.request, self.response) + records = self.panel.get_stats()['records'] self.assertEqual(1, len(records)) self.assertEqual('Nothing to see here, move along!', records[0]['message']) def test_formatting(self): - logger = logging.getLogger(__name__) - logger.info('There are %d %s', 5, 'apples') + self.logger.info('There are %d %s', 5, 'apples') - logging_panel = self.toolbar.get_panel(LoggingPanel) - logging_panel.process_response(None, None) - records = logging_panel.get_stats()['records'] + self.panel.process_response(self.request, self.response) + records = self.panel.get_stats()['records'] self.assertEqual(1, len(records)) self.assertEqual('There are 5 apples', @@ -39,14 +40,11 @@ class LoggingPanelTestCase(BaseTestCase): def __str__(self): raise Exception('Please not stringify me!') - logger = logging.getLogger(__name__) - # should not raise exception, but fail silently - logger.debug('This class is misbehaving: %s', BadClass()) + self.logger.debug('This class is misbehaving: %s', BadClass()) - logging_panel = self.toolbar.get_panel(LoggingPanel) - logging_panel.process_response(None, None) - records = logging_panel.get_stats()['records'] + self.panel.process_response(self.request, self.response) + records = self.panel.get_stats()['records'] self.assertEqual(1, len(records)) self.assertEqual(MESSAGE_IF_STRING_REPRESENTATION_INVALID, diff --git a/tests/panels/test_sql.py b/tests/panels/test_sql.py index 4acd10b..6b14b68 100644 --- a/tests/panels/test_sql.py +++ b/tests/panels/test_sql.py @@ -15,15 +15,18 @@ from ..base import BaseTestCase class SQLPanelTestCase(BaseTestCase): + def setUp(self): + super(SQLPanelTestCase, self).setUp() + self.panel = self.toolbar.get_panel(SQLDebugPanel) + def test_recording(self): - panel = self.toolbar.get_panel(SQLDebugPanel) - self.assertEqual(len(panel._queries), 0) + self.assertEqual(len(self.panel._queries), 0) list(User.objects.all()) # ensure query was logged - self.assertEqual(len(panel._queries), 1) - query = panel._queries[0] + self.assertEqual(len(self.panel._queries), 1) + query = self.panel._queries[0] self.assertEqual(query[0], 'default') self.assertTrue('sql' in query[1]) self.assertTrue('duration' in query[1]) @@ -33,25 +36,24 @@ class SQLPanelTestCase(BaseTestCase): self.assertTrue(len(query[1]['stacktrace']) > 0) def test_non_ascii_query(self): - panel = self.toolbar.get_panel(SQLDebugPanel) - self.assertEqual(len(panel._queries), 0) + self.assertEqual(len(self.panel._queries), 0) # non-ASCII text query list(User.objects.extra(where=["username = 'apéro'"])) - self.assertEqual(len(panel._queries), 1) + self.assertEqual(len(self.panel._queries), 1) # non-ASCII text parameters list(User.objects.filter(username='thé')) - self.assertEqual(len(panel._queries), 2) + self.assertEqual(len(self.panel._queries), 2) # non-ASCII bytes parameters list(User.objects.filter(username='café'.encode('utf-8'))) - self.assertEqual(len(panel._queries), 3) + self.assertEqual(len(self.panel._queries), 3) - panel.process_response(self.request, self.response) + self.panel.process_response(self.request, self.response) # ensure the panel renders correctly - self.assertIn('café', panel.content()) + self.assertIn('café', self.panel.content()) @unittest.skipUnless(connection.vendor == 'postgresql', 'Test valid only on PostgreSQL') @@ -65,15 +67,14 @@ class SQLPanelTestCase(BaseTestCase): self.assertTrue('erroneous query' in str(e)) def test_disable_stacktraces(self): - panel = self.toolbar.get_panel(SQLDebugPanel) - self.assertEqual(len(panel._queries), 0) + self.assertEqual(len(self.panel._queries), 0) with self.settings(DEBUG_TOOLBAR_CONFIG={'ENABLE_STACKTRACES': False}): list(User.objects.all()) # ensure query was logged - self.assertEqual(len(panel._queries), 1) - query = panel._queries[0] + self.assertEqual(len(self.panel._queries), 1) + query = self.panel._queries[0] self.assertEqual(query[0], 'default') self.assertTrue('sql' in query[1]) self.assertTrue('duration' in query[1]) |
