Mercurial > repos > jmchilton > apitooltests
view disambiguate_cond.xml @ 1:6fc62e74d7a5
Update disambig cond.
author | John Chilton <jmchilton@gmail.com> |
---|---|
date | Thu, 18 Feb 2016 12:56:45 +0000 |
parents | 5f452975cfb4 |
children | d372217872de |
line wrap: on
line source
<tool id="disambiguate_cond" name="disambiguate_cond"> <command> echo "$p1.p1v $p2.p2v $p3.p3v" > $out_file1; cat "$files.p4.file" >> $out_file1; </command> <inputs> <conditional name="p1"> <param type="boolean" name="use" /> <when value="true"> <param name="p1v" value="4" type="integer" /> </when> <when value="false"> <param name="p1v" value="7" type="integer" /> </when> </conditional> <conditional name="p2"> <param type="boolean" name="use" label="use p2" /> <when value="true"> <param name="p2v" value="4" type="integer" /> </when> <when value="false"> <param name="p2v" value="7" type="integer" /> </when> </conditional> <conditional name="p3"> <param type="boolean" name="use" /> <when value="true"> <param name="p3v" value="4" type="integer" /> </when> <when value="false"> <param name="p3v" value="7" type="integer" /> </when> </conditional> <conditional name="files"> <param name="attach_files" type="boolean" checked="true" /> <when value="true"> <conditional name="p4"> <param type="boolean" name="use" /> <when value="true"> <param type="data" name="file" /> </when> </conditional> </when> </conditional> </inputs> <outputs> <data name="out_file1" format="txt" /> </outputs> <tests interactor="api"> <!-- Can use nested conditional blocks as shown below to disambiguate various nested parameters. --> <test> <conditional name="p1"> <param name="use" value="False"/> </conditional> <conditional name="p2"> <param name="use" value="True"/> </conditional> <conditional name="p3"> <param name="use" value="False"/> </conditional> <conditional name="files"> <param name="attach_files" value="True" /> <conditional name="p4"> <param name="use" value="True"/> <param name="file" value="simple_line_alternative.txt" /> </conditional> </conditional> <output name="out_file1"> <assert_contents> <has_line line="7 4 7" /> <has_line line="This is a different line of text." /> </assert_contents> </output> </test> <!-- Can also use a more concise, flat verison of this, but it the above version is more clear and should be considered preferable. --> <test> <param name="p1|use" value="True"/> <param name="p2|use" value="False"/> <param name="p3|use" value="True"/> <param name="p4|use" value="True" /> <!-- Only need to specify enough of a suffix to disambiguate, but don't do this - it is too clever. --> <param name="p4|file" value="simple_line.txt" /> <output name="out_file1"> <assert_contents> <has_line line="4 7 4" /> <has_line line="This is a line of text." /> </assert_contents> </output> </test> </tests> </tool>