test_admin_index.py 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. from django.test import TestCase, override_settings
  2. from django.urls import reverse
  3. from misago.admin.testutils import AdminTestCase
  4. from misago.admin.views.index import check_misago_address
  5. class AdminIndexViewTests(AdminTestCase):
  6. def test_view_returns_200(self):
  7. """admin index view returns 200"""
  8. response = self.client.get(reverse('misago:admin:index'))
  9. self.assertContains(response, self.user.username)
  10. def test_view_contains_address_check(self):
  11. """admin index view contains address check"""
  12. response = self.client.get(reverse('misago:admin:index'))
  13. self.assertContains(response, "MISAGO_ADDRESS")
  14. class RequestMock(object):
  15. absolute_uri = 'https://misago-project.org/somewhere/'
  16. def build_absolute_uri(self, location):
  17. assert location == '/'
  18. return self.absolute_uri
  19. request = RequestMock()
  20. incorrect_address = 'http://somewhere.com'
  21. correct_address = request.absolute_uri
  22. class AdminIndexAddressCheckTests(TestCase):
  23. @override_settings(MISAGO_ADDRESS=None)
  24. def test_address_not_set(self):
  25. """check handles address not set"""
  26. result = check_misago_address(request)
  27. self.assertEqual(result, {
  28. 'is_correct': False,
  29. 'set_address': None,
  30. 'correct_address': request.absolute_uri,
  31. })
  32. @override_settings(MISAGO_ADDRESS=incorrect_address)
  33. def test_address_set_invalid(self):
  34. """check handles incorrect address"""
  35. result = check_misago_address(request)
  36. self.assertEqual(result, {
  37. 'is_correct': False,
  38. 'set_address': incorrect_address,
  39. 'correct_address': request.absolute_uri,
  40. })
  41. @override_settings(MISAGO_ADDRESS=correct_address)
  42. def test_address_set_valid(self):
  43. """check handles correct address"""
  44. result = check_misago_address(request)
  45. self.assertEqual(result, {
  46. 'is_correct': True,
  47. 'set_address': correct_address,
  48. 'correct_address': request.absolute_uri,
  49. })