diff --git a/aggregator/tests.py b/aggregator/tests.py index f2573f597..9f705be18 100644 --- a/aggregator/tests.py +++ b/aggregator/tests.py @@ -95,6 +95,18 @@ def test_community_index_number_of_queries(self): with self.assertNumQueries(6): self.client.get(url) + def test_empty_feed_type_not_rendered(self): + empty_type = models.FeedType.objects.create(name="Empty", slug="empty") + models.Feed.objects.create( + title="Empty blog", + feed_url="empty.com/rss/", + public_url="empty.com/", + approval_status=models.APPROVED_FEED, + feed_type=empty_type, + ) + response = self.client.get(reverse("community-index")) + self.assertNotContains(response, "Empty") + def test_feed_list_only_approved_and_active(self): url = reverse( "community-feed-list", kwargs={"feed_type_slug": self.feed_type.slug} diff --git a/aggregator/views.py b/aggregator/views.py index 023d5a9ea..4355a0e4a 100644 --- a/aggregator/views.py +++ b/aggregator/views.py @@ -14,7 +14,9 @@ def index(request): """ feeds = [] for ft in FeedType.objects.all(): - feeds.append((ft, ft.items()[0:5])) + recent_items = ft.items()[0:5] + if recent_items: + feeds.append((ft, recent_items)) ctx = {"feedtype_list": feeds} return render(request, "aggregator/index.html", ctx)