test_usercp_views.py 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. from django.contrib.auth import get_user_model
  2. from django.core.urlresolvers import reverse
  3. from misago.admin.testutils import AdminTestCase
  4. class ChangeForumOptionsTests(AdminTestCase):
  5. def setUp(self):
  6. super(ChangeForumOptionsTests, self).setUp()
  7. self.view_link = reverse('misago:usercp_change_forum_options')
  8. def test_change_forum_options_get(self):
  9. """GET to usercp change options view returns 200"""
  10. response = self.client.get(self.view_link)
  11. self.assertEqual(response.status_code, 200)
  12. self.assertIn('Change forum options', response.content)
  13. def test_change_forum_options_post(self):
  14. """POST to usercp change options view returns 302"""
  15. response = self.client.post(self.view_link, data={
  16. 'timezone': 'Asia/Qatar',
  17. 'presence_visibility': '2',
  18. 'subscribe_to_started_threads': '0',
  19. 'subscribe_to_replied_threads': '1',
  20. })
  21. self.assertEqual(response.status_code, 302)
  22. test_user = get_user_model().objects.get(pk=self.test_admin.pk)
  23. self.assertEqual(test_user.timezone, 'Asia/Qatar')
  24. self.assertEqual(test_user.presence_visibility, 2)
  25. self.assertEqual(test_user.subscribe_to_started_threads, 0)
  26. self.assertEqual(test_user.subscribe_to_replied_threads, 1)
  27. class ChangeUsernameTests(AdminTestCase):
  28. def setUp(self):
  29. super(ChangeUsernameTests, self).setUp()
  30. self.view_link = reverse('misago:usercp_change_username')
  31. def test_change_username_get(self):
  32. """GET to usercp change username view returns 200"""
  33. response = self.client.get(self.view_link)
  34. self.assertEqual(response.status_code, 200)
  35. self.assertIn('Change username', response.content)
  36. def test_change_username_post(self):
  37. """POST to usercp change username view returns 302"""
  38. response = self.client.post(self.view_link,
  39. data={'new_username': 'Boberson'})
  40. self.assertEqual(response.status_code, 302)
  41. test_user = get_user_model().objects.get(pk=self.test_admin.pk)
  42. self.assertEqual(test_user.username, 'Boberson')
  43. response = self.client.get(self.view_link)
  44. self.assertEqual(response.status_code, 200)
  45. self.assertIn(test_user.username, response.content)