def test_getNextJobStatus(self): """Should find next packaging job.""" #suppress job creation. with EventRecorder(): packaging = self.factory.makePackagingLink() self.assertIs(None, TranslationMergeJob.getNextJobStatus(packaging)) TranslationMergeJob.forPackaging(packaging) self.assertEqual(JobStatus.WAITING, TranslationMergeJob.getNextJobStatus(packaging))
def test_getNextJobStatus(self): """Should find next packaging job.""" #suppress job creation. with EventRecorder(): packaging = self.factory.makePackagingLink() self.assertIs(None, TranslationMergeJob.getNextJobStatus(packaging)) TranslationMergeJob.forPackaging(packaging) self.assertEqual( JobStatus.WAITING, TranslationMergeJob.getNextJobStatus(packaging))
def test_getNextJobStatus_wrong_packaging(self): """Jobs on wrong packaging should be ignored.""" #suppress job creation. with EventRecorder(): packaging = self.factory.makePackagingLink() self.factory.makePackagingLink(productseries=packaging.productseries) self.assertIs(None, TranslationMergeJob.getNextJobStatus(packaging)) self.factory.makePackagingLink() self.factory.makePackagingLink(distroseries=packaging.distroseries) self.assertIs(None, TranslationMergeJob.getNextJobStatus(packaging)) TranslationMergeJob.create( sourcepackagename=packaging.sourcepackagename, distroseries=packaging.distroseries, productseries=self.factory.makeProductSeries()) self.assertIs(None, TranslationMergeJob.getNextJobStatus(packaging))
def test_getNextJobStatus_wrong_type(self): """Only TranslationMergeJobs should result.""" #suppress job creation. with EventRecorder(): packaging = self.factory.makePackagingLink() TranslationSplitJob.forPackaging(packaging) self.assertIs(None, TranslationMergeJob.getNextJobStatus(packaging))
def test_getNextJobStatus_status(self): """Only RUNNING and WAITING jobs should influence status.""" #suppress job creation. with EventRecorder(): packaging = self.factory.makePackagingLink() job = TranslationMergeJob.forPackaging(packaging) job.start() self.assertEqual(JobStatus.RUNNING, TranslationMergeJob.getNextJobStatus(packaging)) job.fail() self.assertIs(None, TranslationMergeJob.getNextJobStatus(packaging)) job2 = TranslationMergeJob.forPackaging(packaging) job2.start() job2.complete() job3 = TranslationMergeJob.forPackaging(packaging) job3.suspend() self.assertIs(None, TranslationMergeJob.getNextJobStatus(packaging))
def test_getNextJobStatus_status(self): """Only RUNNING and WAITING jobs should influence status.""" #suppress job creation. with EventRecorder(): packaging = self.factory.makePackagingLink() job = TranslationMergeJob.forPackaging(packaging) job.start() self.assertEqual(JobStatus.RUNNING, TranslationMergeJob.getNextJobStatus(packaging)) job.fail() self.assertIs(None, TranslationMergeJob.getNextJobStatus(packaging)) job2 = TranslationMergeJob.forPackaging(packaging) job2.start() job2.complete() job3 = TranslationMergeJob.forPackaging(packaging) job3.suspend() self.assertIs(None, TranslationMergeJob.getNextJobStatus(packaging))
def test_getNextJobStatus_wrong_type(self): """Only TranslationMergeJobs should result.""" #suppress job creation. with EventRecorder(): packaging = self.factory.makePackagingLink() TranslationSplitJob.forPackaging(packaging) self.assertIs( None, TranslationMergeJob.getNextJobStatus(packaging))
def test_getNextJobStatus_wrong_packaging(self): """Jobs on wrong packaging should be ignored.""" #suppress job creation. with EventRecorder(): packaging = self.factory.makePackagingLink() self.factory.makePackagingLink( productseries=packaging.productseries) self.assertIs(None, TranslationMergeJob.getNextJobStatus(packaging)) self.factory.makePackagingLink() self.factory.makePackagingLink( distroseries=packaging.distroseries) self.assertIs(None, TranslationMergeJob.getNextJobStatus(packaging)) TranslationMergeJob.create( sourcepackagename=packaging.sourcepackagename, distroseries=packaging.distroseries, productseries=self.factory.makeProductSeries()) self.assertIs(None, TranslationMergeJob.getNextJobStatus(packaging))
def test_getNextJobStatus_order(self): """Status should order by id.""" with EventRecorder(): packaging = self.factory.makePackagingLink() job = TranslationMergeJob.forPackaging(packaging) job.start() TranslationMergeJob.forPackaging(packaging) self.assertEqual(JobStatus.RUNNING, TranslationMergeJob.getNextJobStatus(packaging))
def test_getNextJobStatus_order(self): """Status should order by id.""" with EventRecorder(): packaging = self.factory.makePackagingLink() job = TranslationMergeJob.forPackaging(packaging) job.start() TranslationMergeJob.forPackaging(packaging) self.assertEqual(JobStatus.RUNNING, TranslationMergeJob.getNextJobStatus(packaging))
def is_merge_job_running(self): """Is a merge job running for this source package?""" if not self.is_packaging_configured: return False return TranslationMergeJob.getNextJobStatus( self.context.direct_packaging) is not None