Skip to content

Commit 5524191

Browse files
committed
Add test when referencing non-existing cluster
1 parent d453f53 commit 5524191

File tree

1 file changed

+50
-0
lines changed

1 file changed

+50
-0
lines changed

tests/unit/assessment/test_sequencing.py

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -263,3 +263,53 @@ def test_sequence_steps_from_job_task_with_new_cluster(
263263
required_step_ids=[1],
264264
),
265265
]
266+
267+
268+
def test_sequence_steps_from_job_task_with_non_existing_cluster(
269+
ws, simple_dependency_resolver, mock_path_lookup, admin_locator
270+
) -> None:
271+
"""Sequence a job with a task that references a non-existing cluster.
272+
273+
Sequence:
274+
1. Cluster # TODO: Do we still expect this reference?
275+
2. Task
276+
3. Job
277+
"""
278+
ws.clusters.get.side_effect = ResourceDoesNotExist("Unknown cluster")
279+
task = jobs.Task(task_key="test-task", existing_cluster_id="non-existing-id")
280+
settings = jobs.JobSettings(name="test-job", tasks=[task])
281+
job = jobs.Job(job_id=1234, settings=settings)
282+
sequencer = MigrationSequencer(ws, admin_locator)
283+
sequencer.register_job(job)
284+
285+
steps = list(sequencer.generate_steps())
286+
287+
assert steps == [
288+
MigrationStep(
289+
step_id=2,
290+
step_number=0,
291+
object_type="CLUSTER",
292+
object_id="non-existing-id",
293+
object_name="non-existing-id",
294+
object_owner="John Doe",
295+
required_step_ids=[],
296+
),
297+
MigrationStep(
298+
step_id=1,
299+
step_number=0,
300+
object_type="TASK",
301+
object_id="1234/test-task",
302+
object_name="test-task",
303+
object_owner="John Doe",
304+
required_step_ids=[2],
305+
),
306+
MigrationStep(
307+
step_id=0,
308+
step_number=1,
309+
object_type="JOB",
310+
object_id="1234",
311+
object_name="test-job",
312+
object_owner="John Doe",
313+
required_step_ids=[1],
314+
),
315+
]

0 commit comments

Comments
 (0)