mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-09-24 16:30:27 +08:00
Co-authored-by: Marius van den Beek <m.vandenbeek@gmail.com>
327 lines
15 KiB
XML
327 lines
15 KiB
XML
<tool id="expect_num_outputs" name="expect_num_outputs" version="1.0.0" profile="22.05">
|
|
<description>test for test's expect_num_outputs attribute</description>
|
|
<macros>
|
|
<macro name="content_assertion">
|
|
<assert_contents>
|
|
<has_line line="test" />
|
|
</assert_contents>
|
|
</macro>
|
|
</macros>
|
|
|
|
<command><![CDATA[
|
|
echo 'test' > 1.txt &&
|
|
echo 'test' > 2.txt &&
|
|
echo 'test' > 3.txt &&
|
|
#if $produce_discovered_dataset_not_assign_primary
|
|
echo 'test' > '$discovered_dataset_not_assign_primary' &&
|
|
#end if
|
|
|
|
echo 'test' > p1.forward &&
|
|
echo 'test' > p1.reverse &&
|
|
echo 'test' > p2.forward &&
|
|
echo 'test' > p2.reverse &&
|
|
#if $produce_pair
|
|
echo 'test' > '$pair.forward' &&
|
|
echo 'test' > '$pair.reverse' &&
|
|
#end if
|
|
true
|
|
]]></command>
|
|
<inputs>
|
|
<param name="produce_dataset" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Dataset" />
|
|
<param name="produce_discovered_dataset" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Discovered Dataset"/>
|
|
<param name="produce_discovered_dataset_invisible" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Discovered Dataset"/>
|
|
<param name="produce_discovered_dataset_not_assign_primary" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Discovered Dataset"/>
|
|
<param name="produce_collection" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Collection Filter" />
|
|
<param name="produce_collection_discovered" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Collection Filter" />
|
|
<param name="produce_pair" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Collection Filter" />
|
|
<param name="produce_pair_discovered" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Collection Filter" />
|
|
<param name="produce_paired_list" type="boolean" truevalue="true" falsevalue="false" checked="False" label="List of Pairs Collection Filter" />
|
|
</inputs>
|
|
<outputs>
|
|
<data name="dataset" format="txt" from_work_dir="1.txt">
|
|
<filter>produce_dataset</filter>
|
|
</data>
|
|
<data name="discovered_dataset">
|
|
<discover_datasets pattern="(?P<designation>\d+).txt" ext="txt" visible="true" assign_primary_output="true" />
|
|
<filter>produce_discovered_dataset</filter>
|
|
</data>
|
|
<data name="discovered_dataset_invisible">
|
|
<discover_datasets pattern="(?P<designation>\d+).txt" ext="txt" assign_primary_output="true" />
|
|
<filter>produce_discovered_dataset_invisible</filter>
|
|
</data>
|
|
<data name="discovered_dataset_not_assign_primary">
|
|
<discover_datasets pattern="(?P<designation>\d+).txt" ext="txt" visible="true" assign_primary_output="false" />
|
|
<filter>produce_discovered_dataset_not_assign_primary</filter>
|
|
</data>
|
|
<collection name="collection" type="list" label="List">
|
|
<data name="1" format="txt" from_work_dir="1.txt" />
|
|
<data name="2" format="txt" from_work_dir="2.txt" />
|
|
<data name="3" format="txt" from_work_dir="3.txt" />
|
|
<filter>produce_collection</filter>
|
|
</collection>
|
|
<collection name="collection_discovered" type="list" label="List">
|
|
<discover_datasets pattern="(?P<identifier_0>\d+).txt" ext="txt" visible="true" />
|
|
<filter>produce_collection_discovered</filter>
|
|
</collection>
|
|
<collection name="pair" type="paired" label="paired">
|
|
<data name="forward" format="txt" from_work_dir="p1.forward"/>
|
|
<data name="reverse" format="txt" from_work_dir="p1.reverse" />
|
|
<filter>produce_pair</filter>
|
|
</collection>
|
|
<collection name="pair_discovered" type="paired" label="pair discovered">
|
|
<discover_datasets pattern="p1.(?P<name>.*)" ext="txt" visible="true" />
|
|
<filter>produce_pair_discovered</filter>
|
|
</collection>
|
|
<!-- nested lists seem impossible to define statically, therefore only discovered-->
|
|
<collection name="paired_list" type="list:paired" label="paired list">
|
|
<discover_datasets pattern="(?P<identifier_0>p[12])\.(?P<identifier_1>.*)" ext="txt" visible="true" />
|
|
<filter>produce_paired_list</filter>
|
|
</collection>
|
|
</outputs>
|
|
<tests>
|
|
<!-- dataset with
|
|
- correct expect_num_outputs and count
|
|
- wrong expect_num_outputs
|
|
- wrong count -->
|
|
<test expect_num_outputs="1">
|
|
<param name="produce_dataset" value="true"/>
|
|
<output name="dataset" count="1">
|
|
<expand macro="content_assertion"/>
|
|
</output>
|
|
</test>
|
|
<test expect_num_outputs="2" expect_test_failure="true">
|
|
<param name="produce_dataset" value="true"/>
|
|
<output name="dataset" count="1">
|
|
<expand macro="content_assertion"/>
|
|
</output>
|
|
</test>
|
|
<test expect_num_outputs="1" expect_test_failure="true">
|
|
<param name="produce_dataset" value="true"/>
|
|
<output name="dataset" count="2">
|
|
<expand macro="content_assertion"/>
|
|
</output>
|
|
</test>
|
|
|
|
<!-- discovered datasets with
|
|
- correct expect_num_outputs and count
|
|
- wrong count -->
|
|
<test expect_num_outputs="1">
|
|
<param name="produce_discovered_dataset" value="true" />
|
|
<output name="discovered_dataset" count="3">
|
|
<expand macro="content_assertion"/>
|
|
<discovered_dataset designation="2" ftype="txt">
|
|
<expand macro="content_assertion"/>
|
|
</discovered_dataset>
|
|
<discovered_dataset designation="3" ftype="txt">
|
|
<expand macro="content_assertion"/>
|
|
</discovered_dataset>
|
|
</output>
|
|
</test>
|
|
<test expect_num_outputs="1" expect_test_failure="true">
|
|
<param name="produce_discovered_dataset" value="true" />
|
|
<output name="discovered_dataset" count="2">
|
|
<expand macro="content_assertion"/>
|
|
<discovered_dataset designation="2" ftype="txt">
|
|
<expand macro="content_assertion"/>
|
|
</discovered_dataset>
|
|
<discovered_dataset designation="3" ftype="txt">
|
|
<expand macro="content_assertion"/>
|
|
</discovered_dataset>
|
|
</output>
|
|
</test>
|
|
|
|
<!-- discovered datasets invisible with
|
|
- correct expect_num_outputs and count
|
|
- wrong count -->
|
|
<test expect_num_outputs="1">
|
|
<param name="produce_discovered_dataset_invisible" value="true" />
|
|
<output name="discovered_dataset_invisible" count="3">
|
|
<expand macro="content_assertion"/>
|
|
<discovered_dataset designation="2" ftype="txt">
|
|
<expand macro="content_assertion"/>
|
|
</discovered_dataset>
|
|
<discovered_dataset designation="3" ftype="txt">
|
|
<expand macro="content_assertion"/>
|
|
</discovered_dataset>
|
|
</output>
|
|
</test>
|
|
<test expect_num_outputs="1" expect_test_failure="true">
|
|
<param name="produce_discovered_dataset_invisible" value="true" />
|
|
<output name="discovered_dataset_invisible" count="2">
|
|
<expand macro="content_assertion"/>
|
|
<discovered_dataset designation="2" ftype="txt">
|
|
<expand macro="content_assertion"/>
|
|
</discovered_dataset>
|
|
<discovered_dataset designation="3" ftype="txt">
|
|
<expand macro="content_assertion"/>
|
|
</discovered_dataset>
|
|
</output>
|
|
</test>
|
|
|
|
<!-- discovered datasets invisible -->
|
|
<test expect_num_outputs="1">
|
|
<param name="produce_discovered_dataset_not_assign_primary" value="true" />
|
|
<output name="discovered_dataset_not_assign_primary" count="4">
|
|
<discovered_dataset designation="1" ftype="txt">
|
|
<expand macro="content_assertion"/>
|
|
</discovered_dataset>
|
|
<discovered_dataset designation="2" ftype="txt">
|
|
<expand macro="content_assertion"/>
|
|
</discovered_dataset>
|
|
<discovered_dataset designation="3" ftype="txt">
|
|
<expand macro="content_assertion"/>
|
|
</discovered_dataset>
|
|
</output>
|
|
</test>
|
|
|
|
<!-- collection with statically defined elements -->
|
|
<test expect_num_outputs="4">
|
|
<param name="produce_collection" value="true" />
|
|
<output_collection name="collection" type="list" count="3">
|
|
<element name="1">
|
|
<expand macro="content_assertion"/>
|
|
</element>
|
|
<element name="2">
|
|
<expand macro="content_assertion"/>
|
|
</element>
|
|
<element name="3">
|
|
<expand macro="content_assertion"/>
|
|
</element>
|
|
</output_collection>
|
|
</test>
|
|
|
|
<!-- collection with discovered elements -->
|
|
<test expect_num_outputs="1">
|
|
<param name="produce_collection_discovered" value="true" />
|
|
<output_collection name="collection_discovered" type="list" count="3">
|
|
<element name="1">
|
|
<expand macro="content_assertion"/>
|
|
</element>
|
|
<element name="2">
|
|
<expand macro="content_assertion"/>
|
|
</element>
|
|
<element name="3">
|
|
<expand macro="content_assertion"/>
|
|
</element>
|
|
</output_collection>
|
|
</test>
|
|
|
|
<!-- pair with explicit elements -->
|
|
<test expect_num_outputs="3">
|
|
<param name="produce_pair" value="true" />
|
|
<output_collection name="pair" type="paired" count="2">
|
|
<element name="forward">
|
|
<expand macro="content_assertion"/>
|
|
</element>
|
|
<element name="reverse">
|
|
<expand macro="content_assertion"/>
|
|
</element>
|
|
</output_collection>
|
|
</test>
|
|
|
|
<!-- pair with discovered -->
|
|
<test expect_num_outputs="1">
|
|
<param name="produce_pair_discovered" value="true" />
|
|
<output_collection name="pair_discovered" type="paired" count="2">
|
|
<element name="forward">
|
|
<expand macro="content_assertion"/>
|
|
</element>
|
|
<element name="reverse">
|
|
<expand macro="content_assertion"/>
|
|
</element>
|
|
</output_collection>
|
|
</test>
|
|
|
|
<!-- list of pairs with discovered elements with
|
|
- correct expect_num_outputs, count (output_collection), count (outer element), count (inner element)
|
|
- wrong count (output_collection)
|
|
- wrong count (outer element)
|
|
- wrong count (inner element)
|
|
-->
|
|
<test expect_num_outputs="1">
|
|
<param name="produce_paired_list" value="true" />
|
|
<output_collection name="paired_list" type="list:paired" count="2">
|
|
<element name="p1" count="2">
|
|
<element name="forward" count="1">
|
|
<expand macro="content_assertion"/>
|
|
</element>
|
|
<element name="reverse" count="1">
|
|
<expand macro="content_assertion"/>
|
|
</element>
|
|
</element>
|
|
<element name="p2" count="2">
|
|
<element name="forward" count="1">
|
|
<expand macro="content_assertion"/>
|
|
</element>
|
|
<element name="reverse" count="1">
|
|
<expand macro="content_assertion"/>
|
|
</element>
|
|
</element>
|
|
</output_collection>
|
|
</test>
|
|
<test expect_num_outputs="1" expect_test_failure="true">
|
|
<param name="produce_paired_list" value="true" />
|
|
<output_collection name="paired_list" type="list:paired" count="3">
|
|
<element name="p1" count="2">
|
|
<element name="forward" count="1">
|
|
<expand macro="content_assertion"/>
|
|
</element>
|
|
<element name="reverse" count="1">
|
|
<expand macro="content_assertion"/>
|
|
</element>
|
|
</element>
|
|
<element name="p2" count="2">
|
|
<element name="forward" count="1">
|
|
<expand macro="content_assertion"/>
|
|
</element>
|
|
<element name="reverse" count="1">
|
|
<expand macro="content_assertion"/>
|
|
</element>
|
|
</element>
|
|
</output_collection>
|
|
</test>
|
|
<test expect_num_outputs="1" expect_test_failure="true">
|
|
<param name="produce_paired_list" value="true" />
|
|
<output_collection name="paired_list" type="list:paired" count="2">
|
|
<element name="p1" count="3">
|
|
<element name="forward" count="1">
|
|
<expand macro="content_assertion"/>
|
|
</element>
|
|
<element name="reverse" count="1">
|
|
<expand macro="content_assertion"/>
|
|
</element>
|
|
</element>
|
|
<element name="p2" count="2">
|
|
<element name="forward" count="1">
|
|
<expand macro="content_assertion"/>
|
|
</element>
|
|
<element name="reverse" count="1">
|
|
<expand macro="content_assertion"/>
|
|
</element>
|
|
</element>
|
|
</output_collection>
|
|
</test>
|
|
<test expect_num_outputs="1" expect_test_failure="true">
|
|
<param name="produce_paired_list" value="true" />
|
|
<output_collection name="paired_list" type="list:paired" count="2">
|
|
<element name="p1" count="2">
|
|
<element name="forward" count="2">
|
|
<expand macro="content_assertion"/>
|
|
</element>
|
|
<element name="reverse" count="1">
|
|
<expand macro="content_assertion"/>
|
|
</element>
|
|
</element>
|
|
<element name="p2" count="2">
|
|
<element name="forward" count="1">
|
|
<expand macro="content_assertion"/>
|
|
</element>
|
|
<element name="reverse" count="1">
|
|
<expand macro="content_assertion"/>
|
|
</element>
|
|
</element>
|
|
</output_collection>
|
|
</test>
|
|
</tests>
|
|
</tool>
|