Skip to content

Commit 3be9ede

Browse files
committed
wip: release pipeline
1 parent 1f44b3c commit 3be9ede

File tree

3 files changed

+34
-4
lines changed

3 files changed

+34
-4
lines changed

api/features/release_pipelines/core/models.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ class PipelineStageTrigger(models.Model):
139139
choices=StageTriggerType.choices,
140140
default=StageTriggerType.ON_ENTER,
141141
)
142-
trigger_body = models.JSONField(null=True) # Json field?
142+
trigger_body = models.JSONField(null=True)
143143

144144
stage = models.OneToOneField(
145145
PipelineStage,

api/tests/unit/features/release_pipeline/core/conftest.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@
88

99
@pytest.fixture()
1010
def release_pipeline(project: Project) -> ReleasePipeline:
11-
return ReleasePipeline.objects.create(
11+
release_pipeline = ReleasePipeline.objects.create(
1212
name="Test Pipeline",
1313
project=project,
1414
)
15+
return release_pipeline # type: ignore[no-any-return]

api/tests/unit/features/release_pipeline/core/test_unit_release_pipeline_models.py

Lines changed: 31 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ def test_release_pipeline_get_first_stage_returns_correct_stage(
7474
first_stage = release_pipeline.get_first_stage()
7575

7676
# Then
77-
assert first_stage.order == 0
77+
assert first_stage.order == 0 # type: ignore[union-attr]
7878

7979

8080
def test_release_pipeline_get_last_stage_returns_none_if_pipeline_has_no_stages(
@@ -103,7 +103,36 @@ def test_release_pipeline_get_last_stage_returns_correct_stage(
103103
last_stage = release_pipeline.get_last_stage()
104104

105105
# Then
106-
assert last_stage.order == 2
106+
assert last_stage.order == 2 # type: ignore[union-attr]
107+
108+
109+
def test_release_pipeline_get_next_stage(
110+
release_pipeline: ReleasePipeline, environment: Environment
111+
) -> None:
112+
# Given
113+
stage1 = PipelineStage.objects.create(
114+
name="Stage 1",
115+
pipeline=release_pipeline,
116+
environment=environment,
117+
order=0,
118+
)
119+
stage2 = PipelineStage.objects.create(
120+
name="Stage 2",
121+
pipeline=release_pipeline,
122+
environment=environment,
123+
order=1,
124+
)
125+
stage3 = PipelineStage.objects.create(
126+
name="Stage 3",
127+
pipeline=release_pipeline,
128+
environment=environment,
129+
order=2,
130+
)
131+
132+
# Then
133+
assert stage1.get_next_stage() == stage2
134+
assert stage2.get_next_stage() == stage3
135+
assert stage3.get_next_stage() is None
107136

108137

109138
def test_release_pipeline_get_create_log_message(

0 commit comments

Comments
 (0)