def test_get_runnable_steps_many_upstream_dependencies(pipeline_steps): upstream_dep = PipelineStep(uid='upstream_dep', url='http://null', params={}, requires=[]) upstream_dep.state = 'completed' pipeline_steps[1].requires.append(upstream_dep.uid) pipeline_steps.append(upstream_dep) runnables = get_runnable_steps(pipeline_steps) assert [r.uid for r in runnables] == ['signoff1'] pipeline_steps[0].state = 'completed' runnables = get_runnable_steps(pipeline_steps) assert [r.uid for r in runnables] == ['signoff2']