def test_crawl_empty_log(self): gitiles_base_url = 'https://chromium.definitely_real_gitiles.com/' log_data = {u'log': []} with self.mock_urlfetch() as urlfetch: urlfetch.register_handler( gitiles_base_url + '+log/master?format=json&n=1000', self._gitiles_json(log_data)) commits, finished = controller.crawl_log(gitiles_base_url) self.assertTrue(finished) self.assertEqual(log_data['log'], commits)
def test_crawl_log_not_finished(self): gitiles_base_url = 'https://chromium.definitely_real_gitiles.com/' log_data = { u'log': [{u'commit': u'deadbeef' * 5}], u'next': 'beefdead' * 5, } with self.mock_urlfetch() as urlfetch: urlfetch.register_handler( gitiles_base_url + '+log/master?format=json&n=1000', self._gitiles_json(log_data)) _, finished = controller.crawl_log(gitiles_base_url) self.assertFalse(finished)
def test_crawl_log_not_finished(self): gitiles_base_url = 'https://chromium.definitely_real_gitiles.com/' log_data = { u'log': [{ u'commit': u'deadbeef' * 5 }], u'next': 'beefdead' * 5, } with self.mock_urlfetch() as urlfetch: urlfetch.register_handler( gitiles_base_url + '+log/master?format=json&n=1000', self._gitiles_json(log_data)) _, finished = controller.crawl_log(gitiles_base_url) self.assertFalse(finished)
def test_crawl_log_until(self): gitiles_base_url = 'https://chromium.definitely_real_gitiles.com/' log_data = {u'log': [ {u'commit': u'deadbeef' * 5}, {u'commit': u'deadbb0b' * 5}, {u'commit': u'dead3b0b' * 5}, ]} with self.mock_urlfetch() as urlfetch: urlfetch.register_handler( gitiles_base_url + '+log/master?format=json&n=1000', self._gitiles_json(log_data)) commits, finished = controller.crawl_log( gitiles_base_url, until=u'deadbb0b' * 5) self.assertTrue(finished) self.assertEqual(log_data['log'][0:-2], commits)
def test_crawl_log_until(self): gitiles_base_url = 'https://chromium.definitely_real_gitiles.com/' log_data = { u'log': [ { u'commit': u'deadbeef' * 5 }, { u'commit': u'deadbb0b' * 5 }, { u'commit': u'dead3b0b' * 5 }, ] } with self.mock_urlfetch() as urlfetch: urlfetch.register_handler( gitiles_base_url + '+log/master?format=json&n=1000', self._gitiles_json(log_data)) commits, finished = controller.crawl_log(gitiles_base_url, until=u'deadbb0b' * 5) self.assertTrue(finished) self.assertEqual(log_data['log'][0:-2], commits)