Files
galaxy/test/functional/tools/disambiguate_cond.xml
T

102 lines
3.8 KiB
XML

<tool id="disambiguate_cond" name="disambiguate_cond" version="1.0.0">
<command><![CDATA[
echo "$p1.p1v $p2.p2v $p3.p3v" > '$out_file1' &&
#if $files.attach_files
cat '$files.p4.file' >> '$out_file1'
#else
echo 'no file specified' >> '$out_file1'
#end if
]]></command>
<inputs>
<conditional name="p1">
<param name="use" type="boolean" />
<when value="true">
<param name="p1v" type="integer" value="4" />
</when>
<when value="false">
<param name="p1v" type="integer" value="7" />
</when>
</conditional>
<conditional name="p2">
<param name="use" type="boolean" />
<when value="true">
<param name="p2v" type="integer" value="4" />
</when>
<when value="false">
<param name="p2v" type="integer" value="7" />
</when>
</conditional>
<conditional name="p3">
<param name="use" type="boolean" />
<when value="true">
<param name="p3v" type="integer" value="4" />
</when>
<when value="false">
<param name="p3v" type="integer" value="7" />
</when>
</conditional>
<conditional name="files">
<param name="attach_files" type="boolean" checked="true" />
<when value="true">
<conditional name="p4">
<param name="use" type="boolean" />
<when value="true">
<param name="file" type="data" />
</when>
<when value="false" />
</conditional>
</when>
<when value="false" />
</conditional>
</inputs>
<outputs>
<data name="out_file1" format="txt" />
</outputs>
<tests>
<!-- 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>