Exemplo n.º 1
0
    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)
Exemplo n.º 2
0
    def test_root_categories_tree_no_parent(self):
        """get_categories_tree returns all children of root nodes"""
        categories_tree = get_categories_tree(self.user)
        self.assertEqual(len(categories_tree), 3)

        self.assertEqual(categories_tree[0], Category.objects.get(slug='first-category'))
        self.assertEqual(categories_tree[1], Category.objects.get(slug='category-a'))
        self.assertEqual(categories_tree[2], Category.objects.get(slug='category-e'))
Exemplo n.º 3
0
    def test_list_renders(self):
        """api returns categories for authenticated"""
        response = self.client.get(reverse('misago:api:category-list'))

        for node in get_categories_tree(self.user):
            self.assertContains(response, node.name)
            if node.level > 1:
                self.assertNotContains(response, node.get_absolute_url())
    def test_root_categories_tree_no_parent(self):
        """get_categories_tree returns all children of root nodes"""
        categories_tree = get_categories_tree(self.user)
        self.assertEqual(len(categories_tree), 3)

        self.assertEqual(categories_tree[0], Category.objects.get(slug='first-category'))
        self.assertEqual(categories_tree[1], Category.objects.get(slug='category-a'))
        self.assertEqual(categories_tree[2], Category.objects.get(slug='category-e'))
Exemplo n.º 5
0
    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.assertContains(response, node.name)
            if node.level > 1:
                self.assertContains(response, node.get_absolute_url())
Exemplo n.º 6
0
    def test_list_no_perms_renders(self):
        """api returns no categories for authenticated"""
        override_acl(self.user, {'visible_categories': []})
        response = self.client.get(reverse('misago:api:category-list'))

        for node in get_categories_tree(self.user):
            self.assertNotIn(node.name, response.content)
            if node.level > 1:
                self.assertNotContains(response, node.get_absolute_url())
Exemplo n.º 7
0
    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)
Exemplo n.º 8
0
    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.assertContains(response, node.name)
            if node.level > 1:
                self.assertContains(response, node.get_absolute_url())
Exemplo n.º 9
0
    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)
Exemplo n.º 10
0
def categories(request):
    categories_tree = get_categories_tree(request.user, join_posters=True)

    request.frontend_context['store'].update({
        'categories': CategorySerializer(categories_tree, many=True).data,
    })

    return render(request, 'misago/categories/list.html', {
        'categories': categories_tree,
    })
def categories(request):
    categories_tree = get_categories_tree(request.user, join_posters=True)

    request.frontend_context.update({
        'CATEGORIES': CategorySerializer(categories_tree, many=True).data,
        'CATEGORIES_API': reverse('misago:api:category-list'),
    })

    return render(request, 'misago/categories/list.html', {
        'categories': categories_tree,
    })
Exemplo n.º 12
0
def categories(request):
    categories_tree = get_categories_tree(request.user)

    request.frontend_context.update({
        'CATEGORIES': CategorySerializer(categories_tree, many=True).data,
        'CATEGORIES_API': reverse('misago:api:category-list')
    })

    return render(request, 'misago/categories/list.html', {
        'categories': categories_tree,
    })
Exemplo n.º 13
0
    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.assertNotContains(response, node.get_absolute_url())
Exemplo n.º 14
0
    def test_list_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:category-list'))

        for node in get_categories_tree(self.user):
            self.assertNotContains(response, node.name)
            if node.level > 1:
                self.assertNotContains(response, node.get_absolute_url())
Exemplo n.º 15
0
def categories(request):
    categories_tree = get_categories_tree(request.user)

    request.frontend_context['CATEGORIES'] = CategorySerializer(
        categories_tree, many=True).data
    request.frontend_context['CATEGORIES_API'] = reverse(
        'misago:api:categories')

    return render(request, 'misago/categories/list.html', {
        'categories': categories_tree,
        'is_index': settings.MISAGO_CATEGORIES_ON_INDEX,
    })
Exemplo n.º 16
0
def api(request):
    categories_tree = get_categories_tree(request.user)
    return Response(CategorySerializer(categories_tree, many=True).data)
Exemplo n.º 17
0
 def test_get_category_path(self):
     """get_categories_tree returns all children of root nodes"""
     for node in get_categories_tree(self.user):
         parent_nodes = len(get_category_path(node))
         self.assertEqual(parent_nodes, node.level)
Exemplo n.º 18
0
 def test_root_categories_tree_with_leaf(self):
     """get_categories_tree returns all children of given node"""
     categories_tree = get_categories_tree(
         self.user, Category.objects.get(slug='subcategory-f')
     )
     self.assertEqual(len(categories_tree), 0)
Exemplo n.º 19
0
 def test_root_categories_tree_with_parent(self):
     """get_categories_tree returns all children of given node"""
     categories_tree = get_categories_tree(self.user, self.category_a)
     self.assertEqual(len(categories_tree), 1)
     self.assertEqual(categories_tree[0], Category.objects.get(slug='category-b'))
Exemplo n.º 20
0
 def test_get_category_path(self):
     """get_categories_tree returns all children of root nodes"""
     for node in get_categories_tree(self.user):
         parent_nodes = len(get_category_path(node))
         self.assertEqual(parent_nodes, node.level)
Exemplo n.º 21
0
 def test_root_categories_tree_with_leaf(self):
     """get_categories_tree returns all children of given node"""
     categories_tree = get_categories_tree(
         self.user, Category.objects.get(slug='subcategory-f'))
     self.assertEqual(len(categories_tree), 0)
Exemplo n.º 22
0
 def test_root_categories_tree_with_parent(self):
     """get_categories_tree returns all children of given node"""
     categories_tree = get_categories_tree(self.user, self.category_a)
     self.assertEqual(len(categories_tree), 1)
     self.assertEqual(categories_tree[0],
                      Category.objects.get(slug='category-b'))