589
589
# We want the latest builds first.
592
self.assertEqual([], list(recipe.getCompletedBuilds()))
593
self.assertEqual(builds, list(recipe.getPendingBuilds()))
594
self.assertEqual(builds, list(recipe.getBuilds()))
592
self.assertEqual([], list(recipe.completed_builds))
593
self.assertEqual(builds, list(recipe.pending_builds))
594
self.assertEqual(builds, list(recipe.builds))
596
596
# Change the status of one of the builds and retest.
597
597
removeSecurityProxy(builds[0]).status = BuildStatus.FULLYBUILT
598
self.assertEqual([builds[0]], list(recipe.getCompletedBuilds()))
599
self.assertEqual(builds[1:], list(recipe.getPendingBuilds()))
600
self.assertEqual(builds, list(recipe.getBuilds()))
598
self.assertEqual([builds[0]], list(recipe.completed_builds))
599
self.assertEqual(builds[1:], list(recipe.pending_builds))
600
self.assertEqual(builds, list(recipe.builds))
602
602
def test_getBuilds_cancelled(self):
603
603
# Cancelled builds are not considered pending.
604
604
recipe = self.factory.makeSourcePackageRecipe()
605
605
build = self.factory.makeSourcePackageRecipeBuild(recipe=recipe)
606
606
build.cancelBuild()
607
self.assertEqual([build], list(recipe.getBuilds()))
608
self.assertEqual([build], list(recipe.getCompletedBuilds()))
609
self.assertEqual([], list(recipe.getPendingBuilds()))
607
self.assertEqual([build], list(recipe.builds))
608
self.assertEqual([build], list(recipe.completed_builds))
609
self.assertEqual([], list(recipe.pending_builds))
611
611
def test_setRecipeText_private_base_branch(self):
612
612
source_package_recipe = self.factory.makeSourcePackageRecipe()
645
645
recipe=recipe, archive=archive)
646
646
with person_logged_in(archive.owner):
647
647
archive.disable()
648
self.assertEqual([], list(recipe.getBuilds()))
649
self.assertEqual([], list(recipe.getCompletedBuilds()))
650
self.assertEqual([], list(recipe.getPendingBuilds()))
648
self.assertEqual([], list(recipe.builds))
649
self.assertEqual([], list(recipe.completed_builds))
650
self.assertEqual([], list(recipe.pending_builds))
653
653
class TestRecipeBranchRoundTripping(TestCaseWithFactory):
914
914
recipe, user = self.makeRecipe()[:-1]
915
915
self.assertEqual(recipe, user.getRecipe(name=recipe.name))
917
def test_getRecipes(self):
918
"""Person.getRecipes works as expected."""
917
def test_recipes(self):
918
"""Person.recipes works as expected."""
919
919
recipe, user = self.makeRecipe()[:-1]
920
[ws_recipe] = user.getRecipes()
920
[ws_recipe] = user.recipes
921
921
self.assertEqual(recipe, ws_recipe)
923
923
def test_requestBuild(self):
924
"""Build requests can be performed and getLastBuild() works."""
924
"""Build requests can be performed and last_build works."""
925
925
person = self.factory.makePerson()
926
926
archive = self.factory.makeArchive(owner=person)
927
927
distroseries = self.factory.makeSourcePackageRecipeDistroseries()
932
932
build = recipe.requestBuild(
933
933
archive=archive, distroseries=distroseries,
934
934
pocket=PackagePublishingPocket.RELEASE.title)
935
self.assertEqual(build, recipe.getLastBuild())
935
self.assertEqual(build, recipe.last_build)
937
937
def test_requestBuildRejectRepeat(self):
938
938
"""Build requests are rejected if already pending."""
988
988
self.assertIn('BuildNotAllowedForDistro', str(e))
990
990
def test_getBuilds(self):
991
"""SourcePackageRecipe.get[Pending]Builds works as expected."""
991
"""SourcePackageRecipe.[pending_|completed_]builds is as expected."""
992
992
person = self.factory.makePerson()
993
993
archives = [self.factory.makeArchive(owner=person) for x in range(4)]
994
994
distroseries= self.factory.makeSourcePackageRecipeDistroseries()
1003
1003
archive=archive, distroseries=distroseries,
1004
1004
pocket=PackagePublishingPocket.RELEASE.title)
1005
1005
builds.insert(0, build)
1006
self.assertEqual(builds, list(recipe.getPendingBuilds()))
1007
self.assertEqual(builds, list(recipe.getBuilds()))
1008
self.assertEqual([], list(recipe.getCompletedBuilds()))
1006
self.assertEqual(builds, list(recipe.pending_builds))
1007
self.assertEqual(builds, list(recipe.builds))
1008
self.assertEqual([], list(recipe.completed_builds))