summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorGary Wilson Jr <gary.wilson@gmail.com>2009-03-30 23:20:10 +0000
committerGary Wilson Jr <gary.wilson@gmail.com>2009-03-30 23:20:10 +0000
commit9bbf94112f011276d4e25b21676cfc2b74aaaef5 (patch)
tree3e3899806016ffe898221a13ec28f3c68ced2655 /tests
parent22ac97b17cbc3491629f98b15cc9a699b14ebd73 (diff)
[1.0.X]: Fixed #9978 -- Fixed a KeyError exception that was being raised when using the logout method on the test client on an unauthenticated user, based on patch from ericholscher.
Backport of r10228 from trunk. git-svn-id: http://code.djangoproject.com/svn/django/branches/releases/1.0.X@10236 bcc190cf-cafb-0310-a4f2-bffc1f526a37
Diffstat (limited to 'tests')
-rw-r--r--tests/modeltests/test_client/models.py1
-rw-r--r--tests/regressiontests/test_client_regress/models.py19
2 files changed, 13 insertions, 7 deletions
diff --git a/tests/modeltests/test_client/models.py b/tests/modeltests/test_client/models.py
index 2cca618b4e..a0900ec2c3 100644
--- a/tests/modeltests/test_client/models.py
+++ b/tests/modeltests/test_client/models.py
@@ -411,4 +411,3 @@ class ClientTest(TestCase):
self.assertEqual(mail.outbox[1].from_email, 'from@example.com')
self.assertEqual(mail.outbox[1].to[0], 'second@example.com')
self.assertEqual(mail.outbox[1].to[1], 'third@example.com')
-
diff --git a/tests/regressiontests/test_client_regress/models.py b/tests/regressiontests/test_client_regress/models.py
index 1bffc7d225..14adec0475 100644
--- a/tests/regressiontests/test_client_regress/models.py
+++ b/tests/regressiontests/test_client_regress/models.py
@@ -309,17 +309,17 @@ class ExceptionTests(TestCase):
self.client.get("/test_client_regress/staff_only/")
except SuspiciousOperation:
self.fail("Staff should be able to visit this page")
-
+
class TemplateExceptionTests(TestCase):
def setUp(self):
self.old_templates = settings.TEMPLATE_DIRS
settings.TEMPLATE_DIRS = ()
-
+
def tearDown(self):
settings.TEMPLATE_DIRS = self.old_templates
-
+
def test_no_404_template(self):
- "Missing templates are correctly reported by test client"
+ "Missing templates are correctly reported by test client"
try:
response = self.client.get("/no_such_view/")
self.fail("Should get error about missing template")
@@ -334,7 +334,7 @@ class TemplateExceptionTests(TestCase):
self.fail("Should get error about syntax error in template")
except TemplateSyntaxError:
pass
-
+
# We need two different tests to check URLconf substitution - one to check
# it was changed, and another one (without self.urls) to check it was reverted on
# teardown. This pair of tests relies upon the alphabetical ordering of test execution.
@@ -382,4 +382,11 @@ class SessionTests(TestCase):
response = self.client.get('/test_client_regress/check_session/')
self.assertEqual(response.status_code, 200)
self.assertEqual(response.content, 'YES')
- \ No newline at end of file
+
+ def test_logout(self):
+ """Logout should work whether the user is logged in or not (#9978)."""
+ self.client.logout()
+ login = self.client.login(username='testclient',password='password')
+ self.failUnless(login, 'Could not log in')
+ self.client.logout()
+ self.client.logout()