diff options
Diffstat (limited to 'tests/tests.py')
| -rw-r--r-- | tests/tests.py | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/tests/tests.py b/tests/tests.py index 32ea9d9..f76f1ab 100644 --- a/tests/tests.py +++ b/tests/tests.py @@ -1,10 +1,13 @@ +from __future__ import with_statement import thread from django.conf import settings from django.contrib.auth.models import User +from django.db import connection from django.http import HttpResponse from django.test import TestCase, RequestFactory from django.template import Template, Context +from django.utils import unittest from debug_toolbar.middleware import DebugToolbarMiddleware from debug_toolbar.panels.sql import SQLDebugPanel @@ -103,8 +106,6 @@ class DebugToolbarTestCase(BaseTestCase): self.assertFalse(isinstance(request.urlconf, basestring)) - self.assertTrue(hasattr(request.urlconf.urlpatterns[0], '_callback_str')) - self.assertEquals(request.urlconf.urlpatterns[0]._callback_str, 'debug_toolbar.views.debug_media') self.assertTrue(hasattr(request.urlconf.urlpatterns[1], '_callback_str')) self.assertEquals(request.urlconf.urlpatterns[-1]._callback_str, 'tests.views.execute_sql') @@ -120,8 +121,6 @@ class DebugToolbarTestCase(BaseTestCase): self.assertFalse(isinstance(request.urlconf, basestring)) - self.assertTrue(hasattr(request.urlconf.urlpatterns[0], '_callback_str')) - self.assertEquals(request.urlconf.urlpatterns[0]._callback_str, 'debug_toolbar.views.debug_media') self.assertTrue(hasattr(request.urlconf.urlpatterns[1], '_callback_str')) self.assertEquals(request.urlconf.urlpatterns[-1]._callback_str, 'tests.views.execute_sql') @@ -135,8 +134,6 @@ class DebugToolbarTestCase(BaseTestCase): self.assertFalse(isinstance(request.urlconf, basestring)) - self.assertTrue(hasattr(request.urlconf.urlpatterns[0], '_callback_str')) - self.assertEquals(request.urlconf.urlpatterns[0]._callback_str, 'debug_toolbar.views.debug_media') self.assertTrue(hasattr(request.urlconf.urlpatterns[1], '_callback_str')) self.assertEquals(request.urlconf.urlpatterns[-1]._callback_str, 'tests.views.execute_sql') @@ -220,6 +217,19 @@ class SQLPanelTestCase(BaseTestCase): # ensure the stacktrace is populated self.assertTrue(len(query[1]['stacktrace']) > 0) + @unittest.skipUnless(connection.vendor=='postgresql', + 'Test valid only on PostgreSQL') + def test_erroneous_query(self): + """ + Test that an error in the query isn't swallowed by the middleware. + """ + from django.db import connection + from django.db.utils import DatabaseError + try: + connection.cursor().execute("erroneous query") + except DatabaseError as e: + self.assertTrue('erroneous query' in str(e)) + def test_disable_stacktraces(self): panel = self.toolbar.get_panel(SQLDebugPanel) self.assertEquals(len(panel._queries), 0) |
