0
|
1 <tool id="disambiguate_cond" name="disambiguate_cond">
|
|
2 <command>
|
|
3 echo "$p1.p1v $p2.p2v $p3.p3v" > $out_file1; cat "$files.p4.file" >> $out_file1;
|
|
4 </command>
|
|
5 <inputs>
|
|
6 <conditional name="p1">
|
|
7 <param type="boolean" name="use" />
|
|
8 <when value="true">
|
|
9 <param name="p1v" value="4" type="integer" />
|
|
10 </when>
|
|
11 <when value="false">
|
|
12 <param name="p1v" value="7" type="integer" />
|
|
13 </when>
|
|
14 </conditional>
|
|
15 <conditional name="p2">
|
1
|
16 <param type="boolean" name="use" label="use p2" />
|
0
|
17 <when value="true">
|
|
18 <param name="p2v" value="4" type="integer" />
|
|
19 </when>
|
|
20 <when value="false">
|
|
21 <param name="p2v" value="7" type="integer" />
|
|
22 </when>
|
|
23 </conditional>
|
|
24 <conditional name="p3">
|
|
25 <param type="boolean" name="use" />
|
|
26 <when value="true">
|
|
27 <param name="p3v" value="4" type="integer" />
|
|
28 </when>
|
|
29 <when value="false">
|
|
30 <param name="p3v" value="7" type="integer" />
|
|
31 </when>
|
|
32 </conditional>
|
|
33 <conditional name="files">
|
|
34 <param name="attach_files" type="boolean" checked="true" />
|
|
35 <when value="true">
|
|
36 <conditional name="p4">
|
|
37 <param type="boolean" name="use" />
|
|
38 <when value="true">
|
|
39 <param type="data" name="file" />
|
|
40 </when>
|
|
41 </conditional>
|
|
42 </when>
|
|
43 </conditional>
|
|
44 </inputs>
|
|
45 <outputs>
|
|
46 <data name="out_file1" format="txt" />
|
|
47 </outputs>
|
|
48 <tests interactor="api">
|
|
49 <!-- Can use nested conditional blocks as shown below to disambiguate
|
|
50 various nested parameters. -->
|
|
51 <test>
|
|
52 <conditional name="p1">
|
|
53 <param name="use" value="False"/>
|
|
54 </conditional>
|
|
55 <conditional name="p2">
|
|
56 <param name="use" value="True"/>
|
|
57 </conditional>
|
|
58 <conditional name="p3">
|
|
59 <param name="use" value="False"/>
|
|
60 </conditional>
|
|
61 <conditional name="files">
|
|
62 <param name="attach_files" value="True" />
|
|
63 <conditional name="p4">
|
|
64 <param name="use" value="True"/>
|
|
65 <param name="file" value="simple_line_alternative.txt" />
|
|
66 </conditional>
|
|
67 </conditional>
|
|
68 <output name="out_file1">
|
|
69 <assert_contents>
|
|
70 <has_line line="7 4 7" />
|
|
71 <has_line line="This is a different line of text." />
|
|
72 </assert_contents>
|
|
73 </output>
|
|
74 </test>
|
|
75 <!-- Can also use a more concise, flat verison of this, but it the
|
|
76 above version is more clear and should be considered preferable.
|
|
77 -->
|
|
78 <test>
|
|
79 <param name="p1|use" value="True"/>
|
|
80 <param name="p2|use" value="False"/>
|
|
81 <param name="p3|use" value="True"/>
|
|
82 <param name="p4|use" value="True" />
|
|
83 <!-- Only need to specify enough of a suffix to disambiguate,
|
|
84 but don't do this - it is too clever. -->
|
|
85 <param name="p4|file" value="simple_line.txt" />
|
|
86 <output name="out_file1">
|
|
87 <assert_contents>
|
|
88 <has_line line="4 7 4" />
|
|
89 <has_line line="This is a line of text." />
|
|
90 </assert_contents>
|
|
91 </output>
|
|
92 </test>
|
|
93 </tests>
|
|
94 </tool>
|