12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- from django.core.urlresolvers import reverse
- from misago.acl.testutils import override_acl
- from misago.categories.models import Category
- from misago.categories.utils import get_categories_tree
- from misago.users.testutils import AuthenticatedUserTestCase
- class CategoryViewsTests(AuthenticatedUserTestCase):
- def test_index_renders(self):
- """categories list renders for authenticated"""
- response = self.client.get(reverse('misago:categories'))
- for node in get_categories_tree(self.user):
- self.assertIn(node.name, response.content)
- if node.level > 1:
- self.assertIn(node.get_absolute_url(), response.content)
- def test_index_renders_for_guest(self):
- """categories list renders for guest"""
- self.logout_user()
- response = self.client.get(reverse('misago:categories'))
- for node in get_categories_tree(self.user):
- self.assertIn(node.name, response.content)
- if node.level > 1:
- self.assertIn(node.get_absolute_url(), response.content)
- def test_index_no_perms_renders(self):
- """categories list renders no visible categories for authenticated"""
- override_acl(self.user, {'visible_categories': []})
- response = self.client.get(reverse('misago:categories'))
- for node in get_categories_tree(self.user):
- self.assertNotIn(node.name, response.content)
- if node.level > 1:
- self.assertNotIn(node.get_absolute_url(), response.content)
- def test_index_no_perms_renders_for_guest(self):
- """categories list renders no visible categories for guest"""
- self.logout_user()
- override_acl(self.user, {'visible_categories': []})
- response = self.client.get(reverse('misago:categories'))
- for node in get_categories_tree(self.user):
- self.assertNotIn(node.name, response.content)
- if node.level > 1:
- self.assertNotIn(node.get_absolute_url(), response.content)
- class CategoryAPIViewsTests(AuthenticatedUserTestCase):
- def test_index_renders(self):
- """api returns categories for authenticated"""
- response = self.client.get(reverse('misago:api:categories'))
- for node in get_categories_tree(self.user):
- self.assertIn(node.name, response.content)
- if node.level > 1:
- self.assertIn(node.get_absolute_url(), response.content)
- def test_index_renders_for_guest(self):
- """api returns categories for guest"""
- self.logout_user()
- response = self.client.get(reverse('misago:api:categories'))
- for node in get_categories_tree(self.user):
- self.assertIn(node.name, response.content)
- if node.level > 1:
- self.assertIn(node.get_absolute_url(), response.content)
- def test_index_no_perms_renders(self):
- """api returns no categories for authenticated"""
- override_acl(self.user, {'visible_categories': []})
- response = self.client.get(reverse('misago:api:categories'))
- for node in get_categories_tree(self.user):
- self.assertNotIn(node.name, response.content)
- if node.level > 1:
- self.assertNotIn(node.get_absolute_url(), response.content)
- def test_index_no_perms_renders_for_guest(self):
- """api returns no categories for guest"""
- self.logout_user()
- override_acl(self.user, {'visible_categories': []})
- response = self.client.get(reverse('misago:api:categories'))
- for node in get_categories_tree(self.user):
- self.assertNotIn(node.name, response.content)
- if node.level > 1:
- self.assertNotIn(node.get_absolute_url(), response.content)
|