def test_empty_data(self): r = RSSReader(EMPTY_FILE) self.assertFalse(r.has_entries()) errCount = 0 try: r.get_entries() except Exception as ans: errCount += 1 self.assertTrue(isinstance(ans, KeyNotFoundException)) r.feed["entries"] =[] try: r.get_entries() except Exception as ans: errCount += 1 self.assertTrue(isinstance(ans, KeyNotFoundException)) r.feed["entries"].append({}) try: r.get_entries() except Exception as ans: errCount += 1 self.assertTrue(isinstance(ans, KeyNotFoundException)) r.feed["entries"][0]["title"]="hi" try: r.get_entries() except Exception as ans: errCount += 1 self.assertTrue(isinstance(ans, KeyNotFoundException)) r.feed["entries"][0]["link"]="hi2" try: r.get_entries() except Exception as ans: errCount += 1 self.assertTrue(isinstance(ans, KeyNotFoundException)) self.assertEqual(errCount, 4)
def test_rss_get(self): for file in TEST_FILE_LIST: file = "%s/%s" % (TEST_DATA_DIR, file) r = RSSReader(file) self.assertEqual(len(r.feed["entries"]), r.get_num_entries()) self.assertEqual(r.url, file) d = r.get_entries() for entry in r.feed["entries"]: rawKey = entry["title"] self.assertTrue(d.has_key(rawKey)) self.assertTrue(entry["link"] in d[rawKey]) self.assertTrue(r.has_entries()) r.feed["entries"] = {} self.assertFalse(r.has_entries()) del r.feed["entries"] self.assertFalse(r.has_entries())