test_djangoadmin_auth.py 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. from django.core.urlresolvers import reverse
  2. from django.test import override_settings
  3. from misago.admin.testutils import AdminTestCase
  4. @override_settings(ROOT_URLCONF='misago.core.testproject.urls')
  5. class DjangoAdminAuthTests(AdminTestCase):
  6. """assertions for Django admin auth interop with Misago User Model"""
  7. def test_login(self):
  8. """its possible to sign in to django admin"""
  9. self.logout_user()
  10. # form renders
  11. response = self.client.get(reverse('admin:index'))
  12. self.assertEqual(response.status_code, 200)
  13. # form handles login
  14. response = self.client.post(reverse('admin:index'), data={
  15. 'username': self.user.email,
  16. 'password': self.USER_PASSWORD,
  17. })
  18. self.assertEqual(response.status_code, 302)
  19. response = self.client.get(reverse('admin:index'))
  20. self.assertEqual(response.status_code, 200)
  21. self.assertContains(response, self.user.username)
  22. def test_logout(self):
  23. """its possible to sign out from django admin"""
  24. response = self.client.get(reverse('admin:index'))
  25. self.assertEqual(response.status_code, 200)
  26. self.assertContains(response, self.user.username)
  27. # assert there's no showstopper on signout page
  28. response = self.client.get(reverse('admin:logout'))
  29. self.assertEqual(response.status_code, 200)
  30. self.assertNotContains(response, self.user.username)
  31. # user was signed out
  32. response = self.client.get(reverse('admin:index'))
  33. self.assertEqual(response.status_code, 200)
  34. self.assertNotContains(response, self.user.username)