def test_get_articles(self):
		collector = CollectArticles(("brokenpromises.channels.guardian",), "2014", "1")
		results   = collector.run()
		print 
		print "results:", len(results)
		assert len(results) > 0
		for result in results:
			assert result.ref_dates, "%s : %s" % (result, result.url)
		assert collector.get_report()
		assert collector.get_report().collector                == "brokenpromises.operations.CollectArticles", collector.get_report().collector
		assert collector.get_report().meta['count']            == len(results)
		assert collector.get_report().meta['related_articles'] <= len(results)
		assert len(collector.get_report().meta['urls_found'])  == len(results)
 def test_get_articles_with_storage(self):
     from brokenpromises import Article
     searched_date = (2014, 1, None)
     collector = CollectArticles(("brokenpromises.channels.nytimes", ),
                                 *searched_date,
                                 use_storage=True)
     # replace storage with custom storage (testing db)
     collector.storage = self.testing_storage
     results = collector.run()
     print
     print "results:", len(results)
     assert len(results) > 0
     for result in results:
         assert result.ref_dates, "%s : %s" % (result, result.url)
     assert collector.get_report()
     assert collector.get_report(
     ).collector == "brokenpromises.operations.CollectArticles"
     assert collector.get_report().meta['count'] == len(results)
     assert collector.get_report().meta['related_articles'] <= len(results)
     assert len(collector.get_report().meta['urls_found']) == len(results)
     assert len(
         self.testing_storage.get_reports(
             name="collector", searched_date=searched_date,
             status="done")) == 1, self.testing_storage.get_reports(
                 searched_date)
     results = collector.run()
     assert len(results) > 0, results
     assert type(results[0]) is Article, type(results[0])
     assert len(
         self.testing_storage.get_reports(searched_date=searched_date)) == 2
     assert len(
         self.testing_storage.get_reports(name="collector",
                                          searched_date=searched_date)) == 2
     assert len(
         self.testing_storage.get_reports(name="collector",
                                          searched_date=searched_date,
                                          status="escaped")) == 1
	def test_get_articles_with_storage(self):
		from brokenpromises import Article
		searched_date = (2014, 1, None)
		collector = CollectArticles(("brokenpromises.channels.nytimes",), *searched_date, use_storage=True)
		# replace storage with custom storage (testing db)
		collector.storage = self.testing_storage
		results           = collector.run()
		print 
		print "results:", len(results)
		assert len(results) > 0
		for result in results:
			assert result.ref_dates, "%s : %s" % (result, result.url)
		assert collector.get_report()
		assert collector.get_report().collector                == "brokenpromises.operations.CollectArticles"
		assert collector.get_report().meta['count']            == len(results)
		assert collector.get_report().meta['related_articles'] <= len(results)
		assert len(collector.get_report().meta['urls_found'])  == len(results)
		assert len(self.testing_storage.get_reports(name="collector", searched_date=searched_date, status="done")) == 1, self.testing_storage.get_reports(searched_date)
		results = collector.run()
		assert len(results) > 0, results
		assert type(results[0]) is Article, type(results[0])
		assert len(self.testing_storage.get_reports(searched_date=searched_date)) == 2
		assert len(self.testing_storage.get_reports(name="collector", searched_date=searched_date)) == 2
		assert len(self.testing_storage.get_reports(name="collector", searched_date=searched_date, status="escaped")) == 1
 def test_get_articles(self):
     collector = CollectArticles(("brokenpromises.channels.guardian", ),
                                 "2014", "1")
     results = collector.run()
     print
     print "results:", len(results)
     assert len(results) > 0
     for result in results:
         assert result.ref_dates, "%s : %s" % (result, result.url)
     assert collector.get_report()
     assert collector.get_report(
     ).collector == "brokenpromises.operations.CollectArticles", collector.get_report(
     ).collector
     assert collector.get_report().meta['count'] == len(results)
     assert collector.get_report().meta['related_articles'] <= len(results)
     assert len(collector.get_report().meta['urls_found']) == len(results)