Skip to content

Commit 3749152

Browse files
Added tests
1 parent 4164579 commit 3749152

File tree

1 file changed

+48
-3
lines changed

1 file changed

+48
-3
lines changed

Diff for: tests/test_extensions.py

+48-3
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ def test_cuda_requirement_v1_0() -> None:
1414
)
1515
cwl_obj = load_document_by_uri(uri)
1616
assert isinstance(next(iter(cwl_obj.requirements)), cwl_v1_0.CUDARequirement)
17+
cwl_dict = cwl_obj.save(top=True)
18+
assert cwl_dict["requirements"][0]["class"] == "cwltool:CUDARequirement"
1719

1820

1921
def test_cuda_requirement_v1_1() -> None:
@@ -25,6 +27,8 @@ def test_cuda_requirement_v1_1() -> None:
2527
)
2628
cwl_obj = load_document_by_uri(uri)
2729
assert isinstance(next(iter(cwl_obj.requirements)), cwl_v1_1.CUDARequirement)
30+
cwl_dict = cwl_obj.save(top=True)
31+
assert cwl_dict["requirements"][0]["class"] == "cwltool:CUDARequirement"
2832

2933

3034
def test_cuda_requirement_v1_2() -> None:
@@ -36,6 +40,8 @@ def test_cuda_requirement_v1_2() -> None:
3640
)
3741
cwl_obj = load_document_by_uri(uri)
3842
assert isinstance(next(iter(cwl_obj.requirements)), cwl_v1_2.CUDARequirement)
43+
cwl_dict = cwl_obj.save(top=True)
44+
assert cwl_dict["requirements"][0]["class"] == "cwltool:CUDARequirement"
3945

4046

4147
def test_load_listing_requirement_v1_0() -> None:
@@ -47,6 +53,8 @@ def test_load_listing_requirement_v1_0() -> None:
4753
)
4854
cwl_obj = load_document_by_uri(uri)
4955
assert isinstance(next(iter(cwl_obj.requirements)), cwl_v1_0.LoadListingRequirement)
56+
cwl_dict = cwl_obj.save(top=True)
57+
assert cwl_dict["requirements"][0]["class"] == "cwltool:LoadListingRequirement"
5058

5159

5260
def test_loop_v1_2() -> None:
@@ -61,6 +69,8 @@ def test_loop_v1_2() -> None:
6169
loop_req = next(iter(cwl_step.requirements))
6270
assert isinstance(loop_req, cwl_v1_2.Loop)
6371
assert isinstance(next(iter(loop_req.loop)), cwl_v1_2.LoopInput)
72+
cwl_dict = cwl_obj.save(top=True)
73+
assert cwl_dict["steps"][0]["requirements"][0]["class"] == "cwltool:Loop"
6474

6575

6676
def test_inplace_update_requirement_v1_0() -> None:
@@ -74,6 +84,8 @@ def test_inplace_update_requirement_v1_0() -> None:
7484
assert isinstance(
7585
next(iter(cwl_obj.requirements)), cwl_v1_0.InplaceUpdateRequirement
7686
)
87+
cwl_dict = cwl_obj.save(top=True)
88+
assert cwl_dict["requirements"][0]["class"] == "cwltool:InplaceUpdateRequirement"
7789

7890

7991
def test_mpi_requirement_v1_0() -> None:
@@ -85,6 +97,8 @@ def test_mpi_requirement_v1_0() -> None:
8597
)
8698
cwl_obj = load_document_by_uri(uri)
8799
assert isinstance(next(iter(cwl_obj.requirements)), cwl_v1_0.MPIRequirement)
100+
cwl_dict = cwl_obj.save(top=True)
101+
assert cwl_dict["requirements"][0]["class"] == "cwltool:MPIRequirement"
88102

89103

90104
def test_mpi_requirement_v1_1() -> None:
@@ -96,6 +110,8 @@ def test_mpi_requirement_v1_1() -> None:
96110
)
97111
cwl_obj = load_document_by_uri(uri)
98112
assert isinstance(next(iter(cwl_obj.requirements)), cwl_v1_1.MPIRequirement)
113+
cwl_dict = cwl_obj.save(top=True)
114+
assert cwl_dict["requirements"][0]["class"] == "cwltool:MPIRequirement"
99115

100116

101117
def test_mpi_requirement_v1_2() -> None:
@@ -107,6 +123,8 @@ def test_mpi_requirement_v1_2() -> None:
107123
)
108124
cwl_obj = load_document_by_uri(uri)
109125
assert isinstance(next(iter(cwl_obj.requirements)), cwl_v1_2.MPIRequirement)
126+
cwl_dict = cwl_obj.save(top=True)
127+
assert cwl_dict["requirements"][0]["class"] == "cwltool:MPIRequirement"
110128

111129

112130
def test_network_access_v1_0() -> None:
@@ -116,6 +134,8 @@ def test_network_access_v1_0() -> None:
116134
)
117135
cwl_obj = load_document_by_uri(uri)
118136
assert isinstance(next(iter(cwl_obj.requirements)), cwl_v1_0.NetworkAccess)
137+
cwl_dict = cwl_obj.save(top=True)
138+
assert cwl_dict["requirements"][0]["class"] == "cwltool:NetworkAccess"
119139

120140

121141
def test_process_generator_v1_0() -> None:
@@ -125,7 +145,10 @@ def test_process_generator_v1_0() -> None:
125145
.resolve()
126146
.as_uri()
127147
)
128-
assert isinstance(load_document_by_uri(uri), cwl_v1_0.ProcessGenerator)
148+
cwl_obj = load_document_by_uri(uri)
149+
assert isinstance(cwl_obj, cwl_v1_0.ProcessGenerator)
150+
cwl_dict = cwl_obj.save(top=True)
151+
assert cwl_dict["class"] == "cwltool:ProcessGenerator"
129152

130153

131154
def test_process_generator_v1_1() -> None:
@@ -135,7 +158,10 @@ def test_process_generator_v1_1() -> None:
135158
.resolve()
136159
.as_uri()
137160
)
138-
assert isinstance(load_document_by_uri(uri), cwl_v1_1.ProcessGenerator)
161+
cwl_obj = load_document_by_uri(uri)
162+
assert isinstance(cwl_obj, cwl_v1_1.ProcessGenerator)
163+
cwl_dict = cwl_obj.save(top=True)
164+
assert cwl_dict["class"] == "cwltool:ProcessGenerator"
139165

140166

141167
def test_process_generator_v1_2() -> None:
@@ -145,60 +171,79 @@ def test_process_generator_v1_2() -> None:
145171
.resolve()
146172
.as_uri()
147173
)
148-
assert isinstance(load_document_by_uri(uri), cwl_v1_2.ProcessGenerator)
174+
cwl_obj = load_document_by_uri(uri)
175+
assert isinstance(cwl_obj, cwl_v1_2.ProcessGenerator)
176+
cwl_dict = cwl_obj.save(top=True)
177+
assert cwl_dict["class"] == "cwltool:ProcessGenerator"
149178

150179

151180
def test_secrets_v1_0() -> None:
152181
"""Test that Secrets objects are correctly loaded for CWL v1.0."""
153182
uri = Path(get_data("testdata/extensions/secrets_v1_0.cwl")).resolve().as_uri()
154183
cwl_obj = load_document_by_uri(uri)
155184
assert isinstance(next(iter(cwl_obj.requirements)), cwl_v1_0.Secrets)
185+
cwl_dict = cwl_obj.save(top=True)
186+
assert cwl_dict["requirements"][0]["class"] == "cwltool:Secrets"
156187

157188

158189
def test_secrets_v1_1() -> None:
159190
"""Test that Secrets objects are correctly loaded for CWL v1.1."""
160191
uri = Path(get_data("testdata/extensions/secrets_v1_1.cwl")).resolve().as_uri()
161192
cwl_obj = load_document_by_uri(uri)
162193
assert isinstance(next(iter(cwl_obj.requirements)), cwl_v1_1.Secrets)
194+
cwl_dict = cwl_obj.save(top=True)
195+
assert cwl_dict["requirements"][0]["class"] == "cwltool:Secrets"
163196

164197

165198
def test_secrets_v1_2() -> None:
166199
"""Test that Secrets objects are correctly loaded for CWL v1.2."""
167200
uri = Path(get_data("testdata/extensions/secrets_v1_2.cwl")).resolve().as_uri()
168201
cwl_obj = load_document_by_uri(uri)
169202
assert isinstance(next(iter(cwl_obj.requirements)), cwl_v1_2.Secrets)
203+
cwl_dict = cwl_obj.save(top=True)
204+
assert cwl_dict["requirements"][0]["class"] == "cwltool:Secrets"
170205

171206

172207
def test_shm_size_v1_0() -> None:
173208
"""Test that ShmSize objects are correctly loaded for CWL v1.0."""
174209
uri = Path(get_data("testdata/extensions/shm-size_v1_0.cwl")).resolve().as_uri()
175210
cwl_obj = load_document_by_uri(uri)
176211
assert isinstance(next(iter(cwl_obj.requirements)), cwl_v1_0.ShmSize)
212+
cwl_dict = cwl_obj.save(top=True)
213+
assert cwl_dict["requirements"][0]["class"] == "cwltool:ShmSize"
177214

178215

179216
def test_shm_size_v1_1() -> None:
180217
"""Test that ShmSize objects are correctly loaded for CWL v1.1."""
181218
uri = Path(get_data("testdata/extensions/shm-size_v1_1.cwl")).resolve().as_uri()
182219
cwl_obj = load_document_by_uri(uri)
183220
assert isinstance(next(iter(cwl_obj.requirements)), cwl_v1_1.ShmSize)
221+
cwl_dict = cwl_obj.save(top=True)
222+
assert cwl_dict["requirements"][0]["class"] == "cwltool:ShmSize"
184223

185224

186225
def test_shm_size_v1_2() -> None:
187226
"""Test that ShmSize objects are correctly loaded for CWL v1.2."""
188227
uri = Path(get_data("testdata/extensions/shm-size_v1_2.cwl")).resolve().as_uri()
189228
cwl_obj = load_document_by_uri(uri)
190229
assert isinstance(next(iter(cwl_obj.requirements)), cwl_v1_2.ShmSize)
230+
cwl_dict = cwl_obj.save(top=True)
231+
assert cwl_dict["requirements"][0]["class"] == "cwltool:ShmSize"
191232

192233

193234
def test_time_limit_v1_0() -> None:
194235
"""Test that TimeLimit objects are correctly loaded for CWL v1.0."""
195236
uri = Path(get_data("testdata/extensions/time-limit_v1_0.cwl")).resolve().as_uri()
196237
cwl_obj = load_document_by_uri(uri)
197238
assert isinstance(next(iter(cwl_obj.requirements)), cwl_v1_0.TimeLimit)
239+
cwl_dict = cwl_obj.save(top=True)
240+
assert cwl_dict["requirements"][0]["class"] == "cwltool:TimeLimit"
198241

199242

200243
def test_work_reuse_v1_0() -> None:
201244
"""Test that WorkReuse objects are correctly loaded for CWL v1.0."""
202245
uri = Path(get_data("testdata/extensions/work-reuse_v1_0.cwl")).resolve().as_uri()
203246
cwl_obj = load_document_by_uri(uri)
204247
assert isinstance(next(iter(cwl_obj.requirements)), cwl_v1_0.WorkReuse)
248+
cwl_dict = cwl_obj.save(top=True)
249+
assert cwl_dict["requirements"][0]["class"] == "cwltool:WorkReuse"

0 commit comments

Comments
 (0)