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_product_request_targets_ignores_inactive_products(self):
     self.clearQueue()
     self.useFixture(FakeLibrarian())
     product = self.factory.makeProduct()
     product.active = False
     self.factory.makeTranslationImportQueueEntry(
         productseries=self.factory.makeProductSeries(product=product))
     self.assertEqual([], list_product_request_targets(None, False))
 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_product_request_filters_private_products(self):
     self.clearQueue()
     self.useFixture(FakeLibrarian())
     owner = self.factory.makePerson()
     product = self.factory.makeProduct(
         owner=owner, information_type=InformationType.PROPRIETARY)
     self.factory.makeTranslationImportQueueEntry(
         productseries=self.factory.makeProductSeries(product=product))
     self.assertEqual([], list_product_request_targets(None, True))
     self.assertEqual([product], list_product_request_targets(owner, True))
    def test_upload_exported_file(self):
        librarian = self.useFixture(FakeLibrarian())
        export = self.makeExportedTranslationFile()
        export_result = self.makeExportResult()
        export_result.setExportFile(export)
        export_result.upload()

        self.assertIsNot(None, export_result.url)
        sha256 = hashlib.sha256(export.content).hexdigest()
        self.assertEqual(sha256, librarian.aliases.values()[0].content.sha256)
        alias = librarian.findBySHA256(sha256)
        self.assertEqual(export.path, alias.filename)
Exemple #7
0
 def test_list_product_request_targets_does_not_duplicate(self):
     # list_product_request_targets will list a product only once.
     self.clearQueue()
     self.useFixture(FakeLibrarian())
     product = self.factory.makeProduct()
     productseries = [
         self.factory.makeProductSeries(product=product)
         for counter in range(2)]
     for series in productseries:
         for counter in range(2):
             self.factory.makeTranslationImportQueueEntry(
                 productseries=series)
     self.assertEqual([product], list_product_request_targets(None, True))
 def test_list_product_request_targets_orders_by_product_name(self):
     self.clearQueue()
     self.useFixture(FakeLibrarian())
     names = ['c', 'a', 'b']
     products = [self.factory.makeProduct(name=name) for name in names]
     productseries = [
         self.factory.makeProductSeries(product=product)
         for product in products
     ]
     for series in productseries:
         self.factory.makeTranslationImportQueueEntry(productseries=series)
     self.assertEqual(sorted(names), [
         product.name
         for product in list_product_request_targets(None, True)
     ])
 def test_list_product_request_targets_filters_status(self):
     self.clearQueue()
     self.useFixture(FakeLibrarian())
     entry_status = RosettaImportStatus.APPROVED
     other_status = RosettaImportStatus.NEEDS_REVIEW
     entry = self.factory.makeTranslationImportQueueEntry(
         productseries=self.factory.makeProductSeries())
     removeSecurityProxy(entry).status = entry_status
     self.assertEqual(
         [],
         list_product_request_targets(
             None, TranslationImportQueueEntry.status == other_status))
     self.assertEqual(
         [entry.productseries.product],
         list_product_request_targets(
             None, TranslationImportQueueEntry.status == entry_status))
 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 setUp(self):
     super(CreateFileImporterTestCase, self).setUp()
     self.fake_librarian = self.useFixture(FakeLibrarian())
     self.translation_import_queue = getUtility(ITranslationImportQueue)
     self.importer_person = self.factory.makePerson()
 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))
 def setUp(self):
     super(SmokeTestTestCase, self).setUp()
     self.fake_librarian = self.useFixture(FakeLibrarian())
Exemple #14
0
 def setUp(self):
     super(TestTranslationBranchApprover, self).setUp()
     self.useFixture(FakeLibrarian())
     self.queue = getUtility(ITranslationImportQueue)
     self.series = self.factory.makeProductSeries()
 def setUp(self):
     super(TestFakeLibrarian, self).setUp()
     self.fake_librarian = self.useFixture(FakeLibrarian())