aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorAymeric Augustin2013-11-09 20:06:41 +0100
committerAymeric Augustin2013-11-10 10:39:42 +0100
commitb1d8b119f5d7d9531d7b93aea18de368827158ae (patch)
tree3db93d7732593913f2c61b52290b4b97734227dc /tests
parentc4e833ad77f21419b8d8239279b4bb162d01fd8f (diff)
downloaddjango-debug-toolbar-b1d8b119f5d7d9531d7b93aea18de368827158ae.tar.bz2
Normalize the way we write panel tests.
Diffstat (limited to 'tests')
-rw-r--r--tests/panels/test_logger.py30
-rw-r--r--tests/panels/test_sql.py31
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])