def test_list_distroseries_request_targets_orders_by_names(self): # list_distroseries_request_targets returns distroseries sorted # primarily by Distribution.name, and secondarily by # DistroSeries.name. self.clearQueue() self.useFixture(FakeLibrarian()) names = ['c', 'a', 'b'] distros = [ self.factory.makeDistribution(name=distro_name) for distro_name in names ] for distro in distros: for series_name in names: series = self.factory.makeDistroSeries(distribution=distro, name=series_name) series.defer_translation_imports = False self.factory.makeTranslationImportQueueEntry( distroseries=series) self.assertEqual([ ('a', 'a'), ('a', 'b'), ('a', 'c'), ('b', 'a'), ('b', 'b'), ('b', 'c'), ('c', 'a'), ('c', 'b'), ('c', 'c'), ], [(series.distribution.name, series.name) for series in list_distroseries_request_targets(True)])
def test_list_distroseries_request_targets_orders_by_names(self): # list_distroseries_request_targets returns distroseries sorted # primarily by Distribution.name, and secondarily by # DistroSeries.name. self.clearQueue() self.useFixture(FakeLibrarian()) names = ['c', 'a', 'b'] distros = [ self.factory.makeDistribution(name=distro_name) for distro_name in names] for distro in distros: for series_name in names: series = self.factory.makeDistroSeries( distribution=distro, name=series_name) series.defer_translation_imports = False self.factory.makeTranslationImportQueueEntry( distroseries=series) self.assertEqual( [ ('a', 'a'), ('a', 'b'), ('a', 'c'), ('b', 'a'), ('b', 'b'), ('b', 'c'), ('c', 'a'), ('c', 'b'), ('c', 'c'), ], [ (series.distribution.name, series.name) for series in list_distroseries_request_targets(True)])
def test_list_distroseries_request_targets_filters_status(self): self.clearQueue() self.useFixture(FakeLibrarian()) entry_status = RosettaImportStatus.APPROVED other_status = RosettaImportStatus.NEEDS_REVIEW series = self.factory.makeDistroSeries() series.defer_translation_imports = False entry = self.factory.makeTranslationImportQueueEntry( distroseries=series) removeSecurityProxy(entry).status = entry_status self.assertEqual( [], list_distroseries_request_targets( TranslationImportQueueEntry.status == other_status)) self.assertEqual( [entry.distroseries], list_distroseries_request_targets( TranslationImportQueueEntry.status == entry_status))
def test_list_distroseries_request_targets_ignores_inactive_series(self): # Distroseries whose imports have been suspended are not # included in list_distroseries_request_targets. self.clearQueue() self.useFixture(FakeLibrarian()) series = self.factory.makeDistroSeries() series.defer_translation_imports = True self.factory.makeTranslationImportQueueEntry(distroseries=series) self.assertEqual([], list_distroseries_request_targets(True))
def test_list_distroseries_request_targets_does_not_duplicate(self): # list_distroseries_request_targets will list a distroseries # only once. self.clearQueue() self.useFixture(FakeLibrarian()) series = self.factory.makeDistroSeries() series.defer_translation_imports = False for counter in range(2): self.factory.makeTranslationImportQueueEntry(distroseries=series) self.assertEqual([series], list_distroseries_request_targets(True))
def test_list_distroseries_request_targets_ignores_product_uploads(self): self.clearQueue() self.useFixture(FakeLibrarian()) self.factory.makeTranslationImportQueueEntry( productseries=self.factory.makeProductSeries()) self.assertEqual([], list_distroseries_request_targets(True))