test_profile_views.py 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. from django.core.urlresolvers import reverse
  2. from misago.admin.testutils import AdminTestCase
  3. class UserProfileViewsTests(AdminTestCase):
  4. def setUp(self):
  5. super(UserProfileViewsTests, self).setUp()
  6. self.link_kwargs = {
  7. 'user_slug': self.test_admin.slug,
  8. 'user_id': self.test_admin.pk
  9. }
  10. def test_outdated_slugs(self):
  11. """user profile view redirects to valid slig"""
  12. invalid_kwargs = {'user_slug': 'baww', 'user_id': self.test_admin.pk}
  13. response = self.client.get(reverse('misago:user_posts',
  14. kwargs=invalid_kwargs))
  15. self.assertEqual(response.status_code, 301)
  16. def test_user_posts_list(self):
  17. """user profile posts list has no showstoppers"""
  18. response = self.client.get(reverse('misago:user_posts',
  19. kwargs=self.link_kwargs))
  20. self.assertEqual(response.status_code, 200)
  21. self.assertIn('posted no messages', response.content)
  22. def test_user_threads_list(self):
  23. """user profile threads list has no showstoppers"""
  24. response = self.client.get(reverse('misago:user_threads',
  25. kwargs=self.link_kwargs))
  26. self.assertEqual(response.status_code, 200)
  27. self.assertIn('started no threads', response.content)
  28. def test_user_name_history_list(self):
  29. """user name changes history list has no showstoppers"""
  30. response = self.client.get(reverse('misago:user_name_history',
  31. kwargs=self.link_kwargs))
  32. self.assertEqual(response.status_code, 200)
  33. self.assertIn('Your username was never changed', response.content)
  34. self.test_admin.set_username('RenamedAdmin')
  35. self.test_admin.save()
  36. self.test_admin.set_username('TestAdmin')
  37. self.test_admin.save()
  38. response = self.client.get(reverse('misago:user_name_history',
  39. kwargs=self.link_kwargs))
  40. self.assertEqual(response.status_code, 200)
  41. self.assertIn("TestAdmin</strong> changed name to <strong>Renamed",
  42. response.content)