def test_feed_from_url(): url = "http://www.xkcd.com/rss.xml" def parse_stub(url): # define stub return xkcd_feed real_parse = feedparser.parse # save real value feedparser.parse = parse_stub # attach stub try: assert_equals(xkcd_feed, RSReader().feed_from_url(url)) finally: feedparser.parse = real_parse # restore real value
def test_main(): """Hook components together""" args = ["unused_program_name", "u1"] subject = RSReader() subject.aggregate_feed = mock() subject.feed_writer = mock() method(subject.aggregate_feed, 'from_urls').expects(["u1"]) method(subject.feed_writer, 'print_entry_listings').\ expects(subject.aggregate_feed) replay() subject.main(args) verify()
def test_main(): """"Main should create a feed and print results""" args = ["unused_program_name", "x1"] reader = RSReader() reader.aggregate_feed = Mock() reader.feed_writer = Mock() reader.aggregate_feed.expects(once()).from_urls( same(reader.aggregate_feed), eq(["x1"])) reader.feed_writer.expects(once()).print_entry_listings(same(reader.feed_writer), \ same(reader.aggregate_feed)) reader.main(args) reader.aggregate_feed.verify() reader.feed_writer.verify()
def test_rsreader_initializes_dependencies(): """RSReader should initialize dependencies""" reader = RSReader() assert isinstance(reader.aggregate_feed, AggregateFeed) assert isinstance(reader.feed_writer, FeedWriter)
def test_listing_from_item(): computed_line = RSReader().listing_from_item(xkcd_feed, xkcd_items[0]) assert_equals(xkcd_listings[0], computed_line)
def test_listing_from_feed(): computed_items = RSReader().listing_from_feed(xkcd_feed) assert_equals(xkcd_output, computed_items)
def test_listing_from_item(): computed_line = RSReader().listing_from_item(feed, items[0]) assert_equals(expected_items[0], computed_line)
def test_rsreader_dependency_initialization(): """Ensure that dependencies are correctly initialized""" assert isinstance(RSReader().aggregate_feed, AggregateFeed) assert isinstance(RSReader().feed_writer, FeedWriter)