def feedlist(request): '''Fragment for the feed list.''' tags = UserFeed.userfeed_tags(request.user) untagged_feeds = UserFeed.objects.filter(user=request.user).exclude(tags__in=tags).order_by('feed__title') context = { 'tags': tags, 'untagged_feeds': untagged_feeds } return render_to_response( 'raven/feedlist.html', context, context_instance=RequestContext(request))
def test_userfeed_tags(self): bob = User.objects.create_user("bob", "*****@*****.**", password="******") bob.save() bob_feed = Feed.create_and_subscribe("Paul Hummer", "http://www.paulhummer.org/rss", None, bob) bob_userfeed = UserFeed.objects.get(user=bob, feed=bob_feed) bob_userfeed.tags.add("linux", "nerd") bob_userfeed.save() mark = User.objects.create_user("mark", "*****@*****.**", password="******") mark.save() mark_feed = Feed.create_and_subscribe("Paul Hummer", "http://www.paulhummer.org/rss1", None, mark) mark_userfeed = UserFeed.objects.get(user=mark, feed=mark_feed) mark_userfeed.tags.add("linux") mark_userfeed.save() tags = UserFeed.userfeed_tags(bob) self.assertEqual(tags.count(), 2) self.assertEqual([tag.name for tag in tags.all()], ["linux", "nerd"])
def leftside(request): '''Left side!''' unread_count = UserFeedItem.objects.filter(read=False, user=request.user).count() tags = UserFeed.userfeed_tags(request.user) untagged_feeds = UserFeed.objects.filter(user=request.user).exclude(tags__in=tags).order_by('feed__title') untagged_unread_count = 0 for userfeed in untagged_feeds: untagged_unread_count = untagged_unread_count + userfeed.unread_count() context = { 'tags': tags, 'unread_count': unread_count, 'untagged_feeds': untagged_feeds, 'untagged_unread_count': untagged_unread_count } return render_to_response( 'raven/leftside.html', context, context_instance=RequestContext(request))
def test_basics(self): bob = User() bob.email = "Bob" bob.save() steve = User() steve.email = "Steve" steve.save() feed = Feed() feed.title = "Some Political Bullshit" feed.link = "http://bs.com/rss" feed.site = "http://bs.com" feed.save() other_feed = Feed() other_feed.title = "Mom's recipe blog" other_feed.link = "http://yourmom.com/rss" other_feed.site = "http://yourmom.com" other_feed.save() user_feed = UserFeed() user_feed.user = bob user_feed.feed = feed user_feed.save() user_feed2 = UserFeed() user_feed2.user = steve user_feed2.feed = feed user_feed2.save() user_feed3 = UserFeed() user_feed3.user = steve user_feed3.feed = other_feed user_feed3.save() self.assertEqual(feed.subscribers.count(), 2) self.assertEqual(other_feed.subscribers.count(), 1) feeds_for_steve = UserFeed.objects.filter(user=steve) self.assertEqual(len(feeds_for_steve), 2)