changeset 1:f82981245fbe draft

planemo upload for repository https://github.com/xiaeryu/SpoTyping-v2.0/tree/master/SpoTyping-v2.0-commandLine commit 867c0f76a8837f14b88200d36eece6ceef065178
author iuc
date Sat, 06 Oct 2018 18:48:35 -0400
parents 545d934aed81
children efa2be6db310
files spotyping.xml spotyping_macros.xml test-data/input.sitvit.xls test-data/output.sitvit.pdf
diffstat 4 files changed, 70 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/spotyping.xml	Tue May 08 10:22:03 2018 -0400
+++ b/spotyping.xml	Sat Oct 06 18:48:35 2018 -0400
@@ -1,8 +1,8 @@
-<tool id="spotyping" name="SpoTyping" version="@TOOL_VERSION@+galaxy0" profile="17.01">
+<tool id="spotyping" name="SpoTyping" version="@TOOL_VERSION@+galaxy1" profile="17.01">
   <description>fast and accurate in silico Mycobacterium spoligotyping from sequence reads</description>
 
   <macros>
-    <token name="@TOOL_VERSION@">2.1</token>
+    <import>spotyping_macros.xml</import>
   </macros>
 
   <requirements>
@@ -13,32 +13,46 @@
     #set $input_file='input.' + $input.extension
     ln -s '${input}' $input_file &&
     SpoTyping.py
-    --noQuery
+    $advanced.noQuery
     $advanced.seq
     $advanced.swift
     $advanced.filter
     $advanced.sorted
     $input_file &&
     cat SpoTyping.log SpoTyping > '${output_txt}'
+    #if $advanced.noQuery != '--noQuery':
+      && cp SITVIT_ONLINE.*.xls '${output_xls}'
+      #if $advanced.pdf_plot == 'yes':
+        && SpoTyping_plot.r '${output_xls}' '${output_pdf}'
+      #end if
+    #end if
     ]]>
   </command>
 
   <inputs>
     <param name="input" type="data" format="fastq,fastq.gz,fasta" label="Sequence reads" />
     <section name="advanced" title="Advanced options" expanded="false">
+      <param type="boolean" argument="--noQuery" label="Query SITVIT" truevalue="" falsevalue="--noQuery" checked="false" help="Query SITVIT service for report on spoligotype" />
       <param type="boolean" argument="--seq" label="Input is assembled sequence" help="Input is either a complete genomic sequence or assembled contigs from an isolate" truevalue="--seq" falsevalue="" checked="false" />
       <param type="boolean" argument="--swift" label="Swift mode" checked="true" truevalue="--swift=on" falsevalue="--swift=off" />
       <param type="boolean" argument="--filter" label="Stringent filtering of reads" truevalue="--filter" falsevalue="" checked="false" />
       <param type="boolean" argument="--sorted" label="Reads are sorted to a reference genome" truevalue="--sorted" falsevalue="" />
+      <param type="boolean" name="pdf_plot" label="Generate plot from SITVIT report output" truevalue="yes" falsevalue="" />
     </section>
   </inputs>
 
   <outputs>
     <data name="output_txt" label="SpoTyping spoligotyping on ${on_string}" format="txt" />
+    <data name="output_xls" label="SpoTyping SITVIT report on ${on_string}" format="excel.xls">
+      <filter>advanced['noQuery']</filter>
+    </data>
+    <data name="output_pdf" label="SpoTyping plot from SITVIT report on ${on_string}" format="pdf">
+      <filter>advanced['pdf_plot']</filter>
+    </data>
   </outputs>
 
   <tests>
-    <test>
+    <test expect_num_outputs="1">
       <param name="input" value="input.fastq.gz" ftype="fastq.gz" />
       <output name="output_txt">
         <assert_contents>
@@ -46,6 +60,41 @@
         </assert_contents>
       </output>
     </test>
+    <test expect_num_outputs="2">
+      <param name="input" value="input.fastq.gz" ftype="fastq.gz" />
+      <param name="noQuery" value="" />
+      <output name="output_txt">
+        <assert_contents>
+          <has_text text="1111111111111111101111111111111100001111111" />
+        </assert_contents>
+      </output>
+      <output name="output_xls">
+        <assert_contents>
+          <has_text text="Spoligotype" />
+        </assert_contents>
+      </output>
+    </test>
+    <test expect_num_outputs="3">
+      <param name="input" value="input.fastq.gz" ftype="fastq.gz" />
+      <param name="noQuery" value="" />
+      <param name="pdf_plot" value="yes" />
+      <output name="output_txt">
+        <assert_contents>
+          <has_text text="1111111111111111101111111111111100001111111" />
+        </assert_contents>
+      </output>
+      <output name="output_xls">
+        <assert_contents>
+          <has_text text="Spoligotype" />
+        </assert_contents>
+      </output>
+      <output name="output_pdf">
+        <assert_contents>
+          <has_text text="PDF-1.4" />
+        </assert_contents>
+      </output>
+    </test>
+
   </tests>
 
   <help><![CDATA[
@@ -65,6 +114,9 @@
 
     **Options:**
 
+    \--noQuery
+    Avoid querying the SITVIT_ online service to describe the prevalance of the reported spoligotype.
+
     \--seq
     Set this if input is a fasta file that contains only complete genomic sequence or assembled contigs from an isolate. [Default is off]
 
@@ -92,13 +144,19 @@
     The binary or octal spoligotype can be used to look up lineage information using a service
     like `TB Lineage`_.
 
-  .. _SpoTyping: https://github.com/xiaeryu/SpoTyping-v2.0/tree/master/SpoTyping-v2.0-commandLine
+    **SITVIT reports**
+
+    Optionally a report on the detected spoligotype can be retrieved from the SITVIT_ database. If such a report is requested it can also be
+    illustrated as a (PDF format) plot.
+
+  .. _SpoTyping: https://github.com/xiaeryu/SpoTyping
   .. _spoligotype: https://www.ncbi.nlm.nih.gov/pubmed/19521871
   .. _TB Lineage: http://tbinsight.cs.rpi.edu/run_tb_lineage.html
+  .. _SITVIT: http://www.pasteur-guadeloupe.fr:8081/SITVIT_ONLINE/
     ]]>
   </help>
 
   <citations>
-    <citation type="doi">10.1186/s13073-016-0270-7</citation>
+    <expand macro="spotyping_citation" />
   </citations>
 </tool>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/spotyping_macros.xml	Sat Oct 06 18:48:35 2018 -0400
@@ -0,0 +1,6 @@
+<macros>
+    <token name="@TOOL_VERSION@">2.1</token>
+    <xml name="spotyping_citation">
+        <citation type="doi">10.1186/s13073-016-0270-7</citation>
+    </xml>
+</macros>
\ No newline at end of file
Binary file test-data/input.sitvit.xls has changed
Binary file test-data/output.sitvit.pdf has changed