X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/cc9aed221c506cfc28f1b6ca37675dba6543d824..e8a76617eeec9429ddf7879048a310ba6e15e0d8:/sdk/cwl/tests/test_submit.py diff --git a/sdk/cwl/tests/test_submit.py b/sdk/cwl/tests/test_submit.py index f5fe2c0e00..7faef6992c 100644 --- a/sdk/cwl/tests/test_submit.py +++ b/sdk/cwl/tests/test_submit.py @@ -1,16 +1,17 @@ -import arvados -import arvados.keep -import arvados.collection -import arvados_cwl import copy import cStringIO import functools import hashlib +import json +import logging import mock import sys import unittest -import json -import logging + +import arvados +import arvados.collection +import arvados_cwl +import arvados.keep from .matcher import JsonDiffMatcher @@ -38,6 +39,7 @@ def stubs(func): stubs.api = mock.MagicMock() + stubs.api._rootDesc = arvados.api('v1')._rootDesc stubs.api.users().current().execute.return_value = { "uuid": stubs.fake_user_uuid, } @@ -60,7 +62,13 @@ def stubs(func): "uuid": "zzzzz-4zz18-zzzzzzzzzzzzzz5", "portable_data_hash": "99999999999999999999999999999995+99", "manifest_text": "" - } ) + }, + { + "uuid": "zzzzz-4zz18-zzzzzzzzzzzzzz6", + "portable_data_hash": "99999999999999999999999999999996+99", + "manifest_text": "" + } + ) stubs.api.collections().get().execute.return_value = { "portable_data_hash": "99999999999999999999999999999993+99", "manifest_text": "./tool 00000000000000000000000000000000+0 0:0:submit_tool.cwl 0:0:blub.txt"} @@ -83,7 +91,7 @@ def stubs(func): } stubs.expect_job_spec = { 'runtime_constraints': { - 'docker_image': 'arvados/jobs' + 'docker_image': 'arvados/jobs:'+arvados_cwl.__version__ }, 'script_parameters': { 'x': { @@ -109,7 +117,7 @@ def stubs(func): '99999999999999999999999999999991+99/wf/submit_wf.cwl' }, 'repository': 'arvados', - 'script_version': 'master', + 'script_version': arvados_cwl.__version__, 'script': 'cwl-runner' } stubs.pipeline_component = stubs.expect_job_spec.copy() @@ -118,24 +126,26 @@ def stubs(func): 'state': 'RunningOnServer', "components": { "cwl-runner": { - 'runtime_constraints': {'docker_image': 'arvados/jobs'}, + 'runtime_constraints': {'docker_image': 'arvados/jobs:'+arvados_cwl.__version__}, 'script_parameters': { - 'y': {'basename': '99999999999999999999999999999998+99', 'location': 'keep:99999999999999999999999999999998+99', 'class': 'Directory'}, - 'x': {'basename': 'blorp.txt', 'class': 'File', 'location': 'keep:99999999999999999999999999999994+99/blorp.txt'}, - 'z': {'basename': 'anonymous', 'class': 'Directory', + 'y': {"value": {'basename': '99999999999999999999999999999998+99', 'location': 'keep:99999999999999999999999999999998+99', 'class': 'Directory'}}, + 'x': {"value": {'basename': 'blorp.txt', 'class': 'File', 'location': 'keep:99999999999999999999999999999994+99/blorp.txt'}}, + 'z': {"value": {'basename': 'anonymous', 'class': 'Directory', 'listing': [ {'basename': 'renamed.txt', 'class': 'File', 'location': 'keep:99999999999999999999999999999998+99/file1.txt'} - ]}, + ]}}, 'cwl:tool': '99999999999999999999999999999991+99/wf/submit_wf.cwl' }, 'repository': 'arvados', - 'script_version': 'master', - 'script': 'cwl-runner' + 'script_version': arvados_cwl.__version__, + 'script': 'cwl-runner', + 'job': {'state': 'Queued', 'uuid': 'zzzzz-8i9sb-zzzzzzzzzzzzzzz'} } } } stubs.pipeline_create = copy.deepcopy(stubs.expect_pipeline_instance) - stubs.pipeline_create["uuid"] = "zzzzz-d1hrv-zzzzzzzzzzzzzzz" + stubs.expect_pipeline_uuid = "zzzzz-d1hrv-zzzzzzzzzzzzzzz" + stubs.pipeline_create["uuid"] = stubs.expect_pipeline_uuid stubs.pipeline_with_job = copy.deepcopy(stubs.pipeline_create) stubs.pipeline_with_job["components"]["cwl-runner"]["job"] = { "uuid": "zzzzz-8i9sb-zzzzzzzzzzzzzzz", @@ -168,7 +178,7 @@ def stubs(func): 'owner_uuid': 'zzzzz-tpzed-zzzzzzzzzzzzzzz', 'command': ['arvados-cwl-runner', '--local', '--api=containers', '/var/lib/cwl/workflow/submit_wf.cwl', '/var/lib/cwl/job/cwl.input.json'], 'name': 'submit_wf.cwl', - 'container_image': '99999999999999999999999999999993+99', + 'container_image': 'arvados/jobs:'+arvados_cwl.__version__, 'output_path': '/var/spool/cwl', 'cwd': '/var/spool/cwl', 'runtime_constraints': { @@ -229,7 +239,7 @@ class TestSubmit(unittest.TestCase): stubs.api.pipeline_instances().create.assert_called_with( body=expect_pipeline) self.assertEqual(capture_stdout.getvalue(), - stubs.expect_job_uuid + '\n') + stubs.expect_pipeline_uuid + '\n') @mock.patch("time.sleep") @stubs @@ -383,7 +393,7 @@ class TestTemplateInputs(unittest.TestCase): "components": { "inputs_test.cwl": { 'runtime_constraints': { - 'docker_image': 'arvados/jobs', + 'docker_image': 'arvados/jobs:'+arvados_cwl.__version__, }, 'script_parameters': { 'cwl:tool': @@ -418,7 +428,7 @@ class TestTemplateInputs(unittest.TestCase): }, }, 'repository': 'arvados', - 'script_version': 'master', + 'script_version': arvados_cwl.__version__, 'script': 'cwl-runner', }, },