12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- from django.urls import reverse
- from misago.acl.testutils import override_acl
- from misago.threads.search import SearchThreads
- from misago.users.testutils import AuthenticatedUserTestCase
- class LandingTests(AuthenticatedUserTestCase):
- def setUp(self):
- super(LandingTests, self).setUp()
- self.test_link = reverse('misago:search')
- def test_no_permission(self):
- """view validates permission to search forum"""
- override_acl(self.user, {
- 'can_search': 0
- })
- response = self.client.get(self.test_link)
- self.assertContains(
- response, "have permission to search site", status_code=403)
- def test_redirect_to_provider(self):
- """view validates permission to search forum"""
- response = self.client.get(self.test_link)
- self.assertEqual(response.status_code, 302)
- self.assertIn(SearchThreads.url, response['location'])
- class SearchTests(AuthenticatedUserTestCase):
- """
- todo:
- - search provider disallowed
- - noscript view displayed
- """
- def test_no_permission(self):
- """view validates permission to search forum"""
- override_acl(self.user, {
- 'can_search': 0
- })
- response = self.client.get(
- reverse('misago:search', kwargs={'search_provider': 'users'}))
- self.assertContains(
- response, "have permission to search site", status_code=403)
- def test_not_found(self):
- """view raises 404 for not found provider"""
- response = self.client.get(
- reverse('misago:search', kwargs={'search_provider': 'nada'}))
- self.assertEqual(response.status_code, 404)
- def test_provider_no_permission(self):
- """provider raises 403 without permission"""
- override_acl(self.user, {
- 'can_search_users': 0
- })
- response = self.client.get(
- reverse('misago:search', kwargs={'search_provider': 'users'}))
- self.assertContains(
- response, "have permission to search users", status_code=403)
- def test_provider(self):
- """provider displays no script page"""
- response = self.client.get(
- reverse('misago:search', kwargs={'search_provider': 'threads'}))
- self.assertContains(response, "enable JavaScript")
|