class LocalDownloaderTests(base_downloader.BaseDownloaderTests): def setUp(self): super(LocalDownloaderTests, self).setUp() self.config.repo_plugin_config[constants.CONFIG_FEED] = 'file://' + VALID_REPO_DIR self.downloader = LocalDownloader(self.repo, None, self.config, self.mock_cancelled_callback) def test_retrieve_metadata(self): # Test docs = self.downloader.retrieve_metadata(self.mock_progress_report) # Verify self.assertEqual(1, len(docs)) metadata = model.RepositoryMetadata() metadata.update_from_json(docs[0]) self.assertEqual(2, len(metadata.modules)) self.assertEqual(1, self.mock_progress_report.metadata_query_total_count) self.assertEqual(1, self.mock_progress_report.metadata_query_finished_count) expected_query = os.path.join(VALID_REPO_DIR, constants.REPO_METADATA_FILENAME) self.assertEqual(expected_query, self.mock_progress_report.metadata_current_query) self.assertEqual(2, self.mock_progress_report.update_progress.call_count) def test_retrieve_metadata_no_metadata_found(self): # Setup self.config.repo_plugin_config[constants.CONFIG_FEED] = 'file://' + INVALID_REPO_DIR # Test try: self.downloader.retrieve_metadata(self.mock_progress_report) self.fail() except FileNotFoundException, e: expected = os.path.join(INVALID_REPO_DIR, constants.REPO_METADATA_FILENAME) self.assertEqual(expected, e.location)
def setUp(self): super(LocalDownloaderTests, self).setUp() self.config.repo_plugin_config[constants.CONFIG_FEED] = 'file://' + VALID_REPO_DIR self.downloader = LocalDownloader(self.repo, None, self.config, self.mock_cancelled_callback)