Browse Source

Extra tests for error pages.

Rafał Pitoń 11 years ago
parent
commit
e6b7bd48aa
1 changed files with 17 additions and 1 deletions
  1. 17 1
      misago/core/tests/test_errorpages.py

+ 17 - 1
misago/core/tests/test_errorpages.py

@@ -1,6 +1,8 @@
 from django.core.urlresolvers import reverse
 from django.core.urlresolvers import reverse
 from django.test import TestCase
 from django.test import TestCase
-
+from django.test.client import RequestFactory
+from misago.core.testproject.views import (mock_custom_403_error_page,
+                                           mock_custom_404_error_page)
 
 
 class ErrorPageViewsTests(TestCase):
 class ErrorPageViewsTests(TestCase):
     urls = 'misago.core.testproject.urls'
     urls = 'misago.core.testproject.urls'
@@ -19,6 +21,10 @@ class ErrorPageViewsTests(TestCase):
 class CustomErrorPagesTests(TestCase):
 class CustomErrorPagesTests(TestCase):
     urls = 'misago.core.testproject.urlswitherrorhandlers'
     urls = 'misago.core.testproject.urlswitherrorhandlers'
 
 
+    def setUp(self):
+        self.misago_request = RequestFactory().get(reverse('forum_index'))
+        self.site_request = RequestFactory().get(reverse('raise_403'))
+
     def test_shared_403_decorator(self):
     def test_shared_403_decorator(self):
         """shared_403_decorator calls correct error handler"""
         """shared_403_decorator calls correct error handler"""
         response = self.client.get(reverse('raise_misago_403'))
         response = self.client.get(reverse('raise_misago_403'))
@@ -27,6 +33,11 @@ class CustomErrorPagesTests(TestCase):
         self.assertEqual(response.status_code, 403)
         self.assertEqual(response.status_code, 403)
         self.assertIn("Custom 403", response.content)
         self.assertIn("Custom 403", response.content)
 
 
+        response = mock_custom_403_error_page(self.misago_request)
+        self.assertNotIn("Custom 403", response.content)
+        response = mock_custom_403_error_page(self.site_request)
+        self.assertIn("Custom 403", response.content)
+
     def test_shared_404_decorator(self):
     def test_shared_404_decorator(self):
         """shared_404_decorator calls correct error handler"""
         """shared_404_decorator calls correct error handler"""
         response = self.client.get(reverse('raise_misago_404'))
         response = self.client.get(reverse('raise_misago_404'))
@@ -34,3 +45,8 @@ class CustomErrorPagesTests(TestCase):
         response = self.client.get(reverse('raise_404'))
         response = self.client.get(reverse('raise_404'))
         self.assertEqual(response.status_code, 404)
         self.assertEqual(response.status_code, 404)
         self.assertIn("Custom 404", response.content)
         self.assertIn("Custom 404", response.content)
+
+        response = mock_custom_404_error_page(self.misago_request)
+        self.assertNotIn("Custom 404", response.content)
+        response = mock_custom_404_error_page(self.site_request)
+        self.assertIn("Custom 404", response.content)