def it_gets_a_feed_from_a_url(self): rss = feedparser.FeedParserDict() feed = feedparser.FeedParserDict() feed.id = 'anything' feed.title = "Feed title" rss.entries = [feed] with Stub() as parse: from feedparser import parse parse("url") >> rss getfeed = GetFeed(["url"]) feeds = getfeed.get_new_feed() feeds.title |should| equal_to("Feed title")
def it_retrieves_feeds_from_several_urls(self): with Stub() as feed1: feed1.id >> 1; feed1.title >> "Feed1 title" with Stub() as feed2: feed2.id >> 1; feed2.title >> "Feed2 title" with Stub() as parse: from feedparser import parse rss1 = feedparser.FeedParserDict() rss1.entries = [feed1] parse("url1") >> rss1 rss2 = feedparser.FeedParserDict() rss2.entries = [feed2] parse("url2") >> rss2 getfeed = GetFeed(["url1", "url2"]) feeds = getfeed.get_new_feed() feeds.title |should| equal_to("Feed1 title") feeds = getfeed.get_new_feed() feeds.title |should| equal_to("Feed2 title")
def it_retrieves_last_unread_feeds(self): with Stub() as feed1: feed1.id >> 1; feed1.title >> '1' with Stub() as feed2: feed2.id >> 2; feed2.title >> '2' with Stub() as feed3: feed3.id >> 3; feed3.title >> '3' with Stub() as parse: from feedparser import parse rss = feedparser.FeedParserDict() rss.entries = [feed1] parse("url") >> rss rss = feedparser.FeedParserDict() rss.entries = [feed2, feed1] parse("url") >> rss rss = feedparser.FeedParserDict() rss.entries = [feed3, feed2, feed1] parse("url") >> rss rss = feedparser.FeedParserDict() rss.entries = [feed3, feed2, feed1] parse("url") >> rss getfeed = GetFeed(['url']) received_feeds = getfeed.get_new_feed() received_feeds.title |should| equal_to('1') received_feeds = getfeed.get_new_feed() received_feeds.title |should| equal_to("2") received_feeds = getfeed.get_new_feed() received_feeds.title |should| equal_to("3") received_feeds = getfeed.get_new_feed() received_feeds |should| be(None)