forked from galaxyproject/tools-iuc
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Update hamronization wraper (galaxyproject#5814)
- Update to new version - Add missing supported tools - Use tool-based conditions in inputs - Use input metadata for tools available in Galaxy - Use change_format for output instead of filter and tests
- Loading branch information
Showing
4 changed files
with
593 additions
and
159 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,82 +1,91 @@ | ||
<tool id="hamronize_summarize" name="hamronize: summarize" version="@TOOL_VERSION@+galaxy2" profile="@PROFILE@"> | ||
<description> harmorization reports</description> | ||
<tool id="hamronize_summarize" name="hamronize summarize:" version="@TOOL_VERSION@+galaxy0" profile="@PROFILE@"> | ||
<description>Concatenate and summarize AMR detection reports</description> | ||
<macros> | ||
<import>macros.xml</import> | ||
</macros> | ||
<expand macro="bio_tools"/> | ||
<expand macro="requirements" /> | ||
<expand macro="version_command" /> | ||
<command detect_errors="exit_code"><![CDATA[ | ||
#for $counter, $report in enumerate($reports): | ||
#if $report.is_of_type('tsv', 'tabular'): | ||
#set $ext = 'tsv' | ||
#elif $report.is_of_type('json'): | ||
#set $ext = 'json' | ||
#end if | ||
ln -s '$report' ./report_${counter}.${ext} && | ||
#end for | ||
hamronize summarize | ||
--summary_type $summary_type | ||
#if $summary_type == "tsv" | ||
--output output.tsv | ||
#elif $summary_type == "json" | ||
--output output.json | ||
#else | ||
--output output.html | ||
#end if | ||
./report_* | ||
]]> </command> | ||
#for $counter, $report in enumerate($reports): | ||
#if $report.is_of_type('tsv', 'tabular'): | ||
#set $ext = 'tsv' | ||
#elif $report.is_of_type('json'): | ||
#set $ext = 'json' | ||
#end if | ||
ln -s '$report' 'report_${counter}.${ext}' && | ||
#end for | ||
hamronize | ||
summarize | ||
--summary_type '$summary_type' | ||
--output '$output' | ||
report_* | ||
]]></command> | ||
<inputs> | ||
<param name="reports" type="data" multiple="true" format="tabular,json" label="Report files"/> | ||
<param name="summary_type" type="select" label="Output format" multiple="false"> | ||
<option value="tsv">tsv</option> | ||
<option value="json">json</option> | ||
<option value="interactive">interactive</option> | ||
<param argument="--summary_type" type="select" label="Output format" multiple="false"> | ||
<option value="tsv">Tabular</option> | ||
<option value="json">JSON</option> | ||
<option value="interactive">Interactive HTML</option> | ||
</param> | ||
</inputs> | ||
|
||
<outputs> | ||
<data format="tabular" name="output_tsv" label="${tool.name} on ${on_string}: Table" from_work_dir="output.tsv"> | ||
<filter>summary_type == "tsv"</filter> | ||
</data> | ||
<data format="json" name="output_json" label="${tool.name} on ${on_string}: JSON" from_work_dir="output.json"> | ||
<filter>summary_type == "json"</filter> | ||
</data> | ||
<data format="html" name="output_html" label="${tool.name} on ${on_string}: Interactive" from_work_dir="output.html"> | ||
<filter>summary_type == "interactive"</filter> | ||
<data name="output" format="tabular" label="${tool.name} on ${on_string}: Concatenated and summarized reports" from_work_dir="output.tsv"> | ||
<change_format> | ||
<when input="summary_type" value="json" format="json"/> | ||
<when input="summary_type" value="interactive" format="html"/> | ||
</change_format> | ||
</data> | ||
</outputs> | ||
<tests> | ||
<!-- tsv output --> | ||
<test expect_num_outputs="1"> | ||
<param name="reports" value="hamronized_abricate.tsv,hamronized_abricate.json,hamronized_ariba.tsv,hamronized_ariba.json,hamronized_rgi.tsv,hamronized_rgi.json" /> | ||
<param name="summary_type" value="tsv" /> | ||
<output name="output_tsv" ftype="tabular" file="summary.tsv" /> | ||
<output name="output" ftype="tabular"> | ||
<assert_contents> | ||
<has_n_lines n="155"/> | ||
<has_n_columns n="37"/> | ||
<has_text text="GCF_010120755.1_ASM1012075v1_genomic" /> | ||
<has_text text="ariba_report" /> | ||
<has_text text="rgi_report" /> | ||
</assert_contents> | ||
</output> | ||
</test> | ||
<!-- json output --> | ||
<test expect_num_outputs="1"> | ||
<param name="reports" value="hamronized_abricate.tsv,hamronized_abricate.json,hamronized_ariba.tsv,hamronized_ariba.json,hamronized_rgi.tsv,hamronized_rgi.json" /> | ||
<param name="summary_type" value="json" /> | ||
<output name="output_json" ftype="json"> | ||
<output name="output" ftype="json"> | ||
<assert_contents> | ||
<has_text text="GCF_010120755.1_ASM1012075v1_genomic" /> | ||
<has_text text="H_NS.3000676.BA000007.3.1737690_1738104.5476" /> | ||
<has_text text="NODE_9_length_203843_cov_42.4911_20" /> | ||
<has_text text="ariba_report" /> | ||
<has_text text="rgi_report" /> | ||
</assert_contents> | ||
</output> | ||
</test> | ||
<!-- html output --> | ||
<test expect_num_outputs="1"> | ||
<param name="reports" value="hamronized_abricate.tsv,hamronized_abricate.json,hamronized_ariba.tsv,hamronized_ariba.json,hamronized_rgi.tsv,hamronized_rgi.json" /> | ||
<param name="summary_type" value="interactive" /> | ||
<output name="output" ftype="html"> | ||
<assert_contents> | ||
<has_text text="GCF_010120755.1_ASM1012075v1_genomic" /> | ||
<has_text text="ariba_report" /> | ||
<has_text text="rgi_report" /> | ||
</assert_contents> | ||
</output> | ||
</test> | ||
</tests> | ||
<help> | ||
<![CDATA[ | ||
**What it does** | ||
This tool will take a list of report and create single sorted report in the specified format | ||
just containing the unique entries across input reports. It can handle mixed json and tsv hamronized report formats | ||
**Inputs** | ||
A list of hamronize reports | ||
]]> | ||
</help> | ||
<help><![CDATA[ | ||
**What it does** | ||
This tool will take a list of report and create single sorted report in the specified format | ||
just containing the unique entries across input reports. It can handle mixed json and tsv hamronized report formats | ||
**Inputs** | ||
A list of hamronize reports | ||
]]></help> | ||
<expand macro="citations"/> | ||
</tool> |
Oops, something went wrong.