12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- from django.urls import reverse
- from misago.acl.test import patch_user_acl
- from misago.threads.search import SearchThreads
- from misago.users.testutils import AuthenticatedUserTestCase
- class LandingTests(AuthenticatedUserTestCase):
- def setUp(self):
- super().setUp()
- self.test_link = reverse('misago:search')
- @patch_user_acl({'can_search': False})
- def test_no_permission(self):
- """view validates permission to search forum"""
- response = self.client.get(self.test_link)
- self.assertContains(response, "have permission to search site", status_code=403)
- @patch_user_acl({'can_search': True})
- 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):
- @patch_user_acl({'can_search': False})
- def test_no_permission(self):
- """view validates permission to search forum"""
- 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)
- @patch_user_acl({'can_search': True, 'can_search_users': False})
- def test_provider_no_permission(self):
- """provider raises 403 without permission"""
- 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': 'users',
- })
- )
- self.assertContains(response, "Loading search...")
|