-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
stubs.api = mock.MagicMock()
+ stubs.api._rootDesc = arvados.api('v1')._rootDesc
stubs.api.users().current().execute.return_value = {
"uuid": stubs.fake_user_uuid,
}
"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"}
"cwl-runner": {
'runtime_constraints': {'docker_image': 'arvados/jobs'},
'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',
}
}
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",
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