tests.py 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. from django.contrib.auth.models import User
  2. from django.test import TestCase
  3. from django.test.utils import override_settings
  4. @override_settings(PASSWORD_HASHERS=('django.contrib.auth.hashers.SHA1PasswordHasher',))
  5. class XViewMiddlewareTest(TestCase):
  6. fixtures = ['data.xml']
  7. urls = 'admin_docs.urls'
  8. def test_xview_func(self):
  9. user = User.objects.get(username='super')
  10. response = self.client.head('/xview/func/')
  11. self.assertFalse('X-View' in response)
  12. self.client.login(username='super', password='secret')
  13. response = self.client.head('/xview/func/')
  14. self.assertTrue('X-View' in response)
  15. self.assertEqual(response['X-View'], 'admin_docs.views.xview')
  16. user.is_staff = False
  17. user.save()
  18. response = self.client.head('/xview/func/')
  19. self.assertFalse('X-View' in response)
  20. user.is_staff = True
  21. user.is_active = False
  22. user.save()
  23. response = self.client.head('/xview/func/')
  24. self.assertFalse('X-View' in response)
  25. def test_xview_class(self):
  26. user = User.objects.get(username='super')
  27. response = self.client.head('/xview/class/')
  28. self.assertFalse('X-View' in response)
  29. self.client.login(username='super', password='secret')
  30. response = self.client.head('/xview/class/')
  31. self.assertTrue('X-View' in response)
  32. self.assertEqual(response['X-View'], 'admin_docs.views.XViewClass')
  33. user.is_staff = False
  34. user.save()
  35. response = self.client.head('/xview/class/')
  36. self.assertFalse('X-View' in response)
  37. user.is_staff = True
  38. user.is_active = False
  39. user.save()
  40. response = self.client.head('/xview/class/')
  41. self.assertFalse('X-View' in response)