test_errorpages.py 1.4 KB

123456789101112131415161718192021222324252627282930313233343536
  1. from django.core.urlresolvers import reverse
  2. from django.test import TestCase
  3. class ErrorPageViewsTests(TestCase):
  4. urls = 'misago.core.testproject.urls'
  5. def test_permission_denied_returns_403(self):
  6. """permission_denied error page has no show-stoppers"""
  7. response = self.client.get(reverse('raise_misago_403'))
  8. self.assertEqual(response.status_code, 403)
  9. def test_page_not_found_returns_404(self):
  10. """page_not_found error page has no show-stoppers"""
  11. response = self.client.get(reverse('raise_misago_404'))
  12. self.assertEqual(response.status_code, 404)
  13. class CustomErrorPagesTests(TestCase):
  14. urls = 'misago.core.testproject.urlswitherrorhandlers'
  15. def test_shared_403_decorator(self):
  16. """shared_403_decorator calls correct error handler"""
  17. response = self.client.get(reverse('raise_misago_403'))
  18. self.assertEqual(response.status_code, 403)
  19. response = self.client.get(reverse('raise_403'))
  20. self.assertEqual(response.status_code, 403)
  21. self.assertIn("Custom 403", response.content)
  22. def test_shared_404_decorator(self):
  23. """shared_404_decorator calls correct error handler"""
  24. response = self.client.get(reverse('raise_misago_404'))
  25. self.assertEqual(response.status_code, 404)
  26. response = self.client.get(reverse('raise_404'))
  27. self.assertEqual(response.status_code, 404)
  28. self.assertIn("Custom 404", response.content)