Skip to content

Commit 350f0ba

Browse files
Added nested scatter conformance tests (#155)
1 parent 60523c2 commit 350f0ba

16 files changed

+1144
-0
lines changed

conformance_tests.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3128,6 +3128,7 @@
31283128
- $import: tests/mixed-versions/test-index.yaml
31293129
- $import: tests/loadContents/test-index.yaml
31303130
- $import: tests/iwd/test-index.yaml
3131+
- $import: tests/scatter/test-index.yaml
31313132

31323133
- job: tests/empty.json
31333134
tool: tests/params_broken_null.cwl
Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
#!/usr/bin/env cwl-runner
2+
cwlVersion: v1.2
3+
class: Workflow
4+
5+
requirements:
6+
InlineJavascriptRequirement: {}
7+
ScatterFeatureRequirement: {}
8+
SubworkflowFeatureRequirement: {}
9+
10+
inputs:
11+
letters: string[]
12+
letters2: string[]
13+
numbers: int[]
14+
numbers2: int[]
15+
start_line: string
16+
end_line: string
17+
18+
outputs:
19+
result:
20+
type:
21+
type: array
22+
items:
23+
type: array
24+
items: string
25+
outputSource: scatterletters/alphanum
26+
27+
steps:
28+
scatterletters:
29+
run:
30+
class: Workflow
31+
inputs:
32+
letter: string
33+
letter2: string
34+
numbers: int[]
35+
numbers2: int[]
36+
start_line: string
37+
end_line: string
38+
outputs:
39+
alphanum:
40+
type: string[]
41+
outputSource: scatternumbers/alphanum
42+
steps:
43+
scatternumbers:
44+
run:
45+
class: ExpressionTool
46+
inputs:
47+
letter: string
48+
letter2: string
49+
number: int
50+
number2: int
51+
start_line: string
52+
end_line: string
53+
outputs:
54+
alphanum:
55+
type: string
56+
expression: >
57+
${
58+
return {
59+
'alphanum': (inputs.start_line +
60+
inputs.number +
61+
inputs.number2 +
62+
inputs.letter +
63+
inputs.letter2 +
64+
inputs.end_line)
65+
};
66+
}
67+
in:
68+
letter: letter
69+
letter2: letter2
70+
number: numbers
71+
number2: numbers2
72+
start_line: start_line
73+
end_line: end_line
74+
scatter: [number, number2]
75+
scatterMethod: dotproduct
76+
out: [alphanum]
77+
in:
78+
letter: letters
79+
letter2: letters2
80+
numbers: numbers
81+
numbers2: numbers2
82+
start_line: start_line
83+
end_line: end_line
84+
scatter: [letter, letter2]
85+
scatterMethod: dotproduct
86+
out: [alphanum]
Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
#!/usr/bin/env cwl-runner
2+
cwlVersion: v1.2
3+
class: Workflow
4+
5+
requirements:
6+
InlineJavascriptRequirement: {}
7+
ScatterFeatureRequirement: {}
8+
SubworkflowFeatureRequirement: {}
9+
10+
inputs:
11+
letters: string[]
12+
letters2: string[]
13+
numbers: int[]
14+
start_line: string
15+
end_line: string
16+
17+
outputs:
18+
result:
19+
type:
20+
type: array
21+
items:
22+
type: array
23+
items: string
24+
outputSource: scatterletters/alphanum
25+
26+
steps:
27+
scatterletters:
28+
run:
29+
class: Workflow
30+
inputs:
31+
letter: string
32+
letter2: string
33+
numbers: int[]
34+
start_line: string
35+
end_line: string
36+
outputs:
37+
alphanum:
38+
type: string[]
39+
outputSource: scatternumbers/alphanum
40+
steps:
41+
scatternumbers:
42+
run:
43+
class: ExpressionTool
44+
inputs:
45+
letter: string
46+
letter2: string
47+
number: int
48+
start_line: string
49+
end_line: string
50+
outputs:
51+
alphanum:
52+
type: string
53+
expression: >
54+
${
55+
return {
56+
'alphanum': (inputs.start_line +
57+
inputs.number +
58+
inputs.letter +
59+
inputs.letter2 +
60+
inputs.end_line)
61+
};
62+
}
63+
in:
64+
letter: letter
65+
letter2: letter2
66+
number: numbers
67+
start_line: start_line
68+
end_line: end_line
69+
scatter: number
70+
out: [alphanum]
71+
in:
72+
letter: letters
73+
letter2: letters2
74+
numbers: numbers
75+
start_line: start_line
76+
end_line: end_line
77+
scatter: [letter, letter2]
78+
scatterMethod: dotproduct
79+
out: [alphanum]
Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
#!/usr/bin/env cwl-runner
2+
cwlVersion: v1.2
3+
class: Workflow
4+
5+
requirements:
6+
InlineJavascriptRequirement: {}
7+
ScatterFeatureRequirement: {}
8+
SubworkflowFeatureRequirement: {}
9+
10+
inputs:
11+
letters: string[]
12+
letters2: string[]
13+
numbers: int[]
14+
numbers2: int[]
15+
start_line: string
16+
end_line: string
17+
18+
outputs:
19+
result:
20+
type:
21+
type: array
22+
items:
23+
type: array
24+
items: string
25+
outputSource: scatterletters/alphanum
26+
27+
steps:
28+
scatterletters:
29+
run:
30+
class: Workflow
31+
inputs:
32+
letter: string
33+
letter2: string
34+
numbers: int[]
35+
numbers2: int[]
36+
start_line: string
37+
end_line: string
38+
outputs:
39+
alphanum:
40+
type: string[]
41+
outputSource: scatternumbers/alphanum
42+
steps:
43+
scatternumbers:
44+
run:
45+
class: ExpressionTool
46+
inputs:
47+
letter: string
48+
letter2: string
49+
number: int
50+
number2: int
51+
start_line: string
52+
end_line: string
53+
outputs:
54+
alphanum:
55+
type: string
56+
expression: >
57+
${
58+
return {
59+
'alphanum': (inputs.start_line +
60+
inputs.number +
61+
inputs.number2 +
62+
inputs.letter +
63+
inputs.letter2 +
64+
inputs.end_line)
65+
};
66+
}
67+
in:
68+
letter: letter
69+
letter2: letter2
70+
number: numbers
71+
number2: numbers2
72+
start_line: start_line
73+
end_line: end_line
74+
scatter: [number, number2]
75+
scatterMethod: flat_crossproduct
76+
out: [alphanum]
77+
in:
78+
letter: letters
79+
letter2: letters2
80+
numbers: numbers
81+
numbers2: numbers2
82+
start_line: start_line
83+
end_line: end_line
84+
scatter: [letter, letter2]
85+
scatterMethod: flat_crossproduct
86+
out: [alphanum]
Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
#!/usr/bin/env cwl-runner
2+
cwlVersion: v1.2
3+
class: Workflow
4+
5+
requirements:
6+
InlineJavascriptRequirement: {}
7+
ScatterFeatureRequirement: {}
8+
SubworkflowFeatureRequirement: {}
9+
10+
inputs:
11+
letters: string[]
12+
letters2: string[]
13+
numbers: int[]
14+
start_line: string
15+
end_line: string
16+
17+
outputs:
18+
result:
19+
type:
20+
type: array
21+
items:
22+
type: array
23+
items: string
24+
outputSource: scatterletters/alphanum
25+
26+
steps:
27+
scatterletters:
28+
run:
29+
class: Workflow
30+
inputs:
31+
letter: string
32+
letter2: string
33+
numbers: int[]
34+
start_line: string
35+
end_line: string
36+
outputs:
37+
alphanum:
38+
type: string[]
39+
outputSource: scatternumbers/alphanum
40+
steps:
41+
scatternumbers:
42+
run:
43+
class: ExpressionTool
44+
inputs:
45+
letter: string
46+
letter2: string
47+
number: int
48+
start_line: string
49+
end_line: string
50+
outputs:
51+
alphanum:
52+
type: string
53+
expression: >
54+
${
55+
return {
56+
'alphanum': (inputs.start_line +
57+
inputs.number +
58+
inputs.letter +
59+
inputs.letter2 +
60+
inputs.end_line)
61+
};
62+
}
63+
in:
64+
letter: letter
65+
letter2: letter2
66+
number: numbers
67+
start_line: start_line
68+
end_line: end_line
69+
scatter: number
70+
out: [alphanum]
71+
in:
72+
letter: letters
73+
letter2: letters2
74+
numbers: numbers
75+
start_line: start_line
76+
end_line: end_line
77+
scatter: [letter, letter2]
78+
scatterMethod: flat_crossproduct
79+
out: [alphanum]

0 commit comments

Comments
 (0)