From dc73230815e01bebcd0693acc56f126a2c3bb69e Mon Sep 17 00:00:00 2001 From: Todd Dembrey <todd.dembrey@torchbox.com> Date: Thu, 14 Dec 2017 09:34:20 +0000 Subject: [PATCH] Allow iterating through the stage --- opentech/apply/tests/test_workflow.py | 5 +++++ opentech/apply/workflow.py | 3 +++ 2 files changed, 8 insertions(+) diff --git a/opentech/apply/tests/test_workflow.py b/opentech/apply/tests/test_workflow.py index 72f9ad0fc..213420444 100644 --- a/opentech/apply/tests/test_workflow.py +++ b/opentech/apply/tests/test_workflow.py @@ -43,6 +43,11 @@ class TestStageCreation(SimpleTestCase): self.assertEqual(stage.form, form) self.assertEqual(stage.phases, phases) + def test_can_iterate_through_phases(self): + stage = StageFactory() + for phase, check in zip(stage, stage.phases): + self.assertEqual(phase, check) + class TestPhaseCreation(SimpleTestCase): def test_can_create_phase(self): diff --git a/opentech/apply/workflow.py b/opentech/apply/workflow.py index 882208b35..414978eb5 100644 --- a/opentech/apply/workflow.py +++ b/opentech/apply/workflow.py @@ -31,6 +31,9 @@ class Stage: self.form = form self.phases = phases + def __iter__(self) -> Iterator['Phase']: + yield from self.phases + class Phase: def __init__(self, name: str) -> None: -- GitLab