def test_render_sitemap(self): try: os.remove("sitemap.pdf") except OSError: pass self.assertEqual(os.path.exists("sitemap.pdf"), False) c = Crawler("http://a.com") c.render_sitemap() self.assertEqual(os.path.exists("sitemap.pdf"), True)
def test_crawl_limit(self): c = Crawler("http://a.com") c.SLEEP_TIME = 0 def side_effect(): c.process_q.pop(0) c._process_next_url = mock.Mock(side_effect=side_effect) c.render_sitemap = mock.Mock() c.URL_LIMIT = 10 c.process_q = ["test"] * 5 c.crawl() self.assertEqual(c._process_next_url.call_count, 5) c._process_next_url.call_count = 0 c.process_q = ["test"] * 10 c.URL_LIMIT = 5 c.crawl() self.assertEqual(c._process_next_url.call_count, 5) c._process_next_url.call_count = 0 c.process_q = ["test"] * 10 c.URL_LIMIT = float("inf") c.crawl() self.assertEqual(c._process_next_url.call_count, 10)