changeset 1:595ae1ba934a draft

"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tool_collections/samtools/samtools_fixmate commit 0f75269223c0821c6c82acf98fde947d0f816f2b"
author iuc
date Tue, 28 Sep 2021 16:13:23 +0000
parents bc0cc7bfbfe9
children 41e36c99a008
files macros.xml samtools_fixmate.xml test-data/2_isize_overflow.bam.expected test-data/3_reverse_read_pp_lt.bam.expected test-data/4_reverse_read_pp_equal.bam.expected test-data/5_ct.bam.expected test-data/6_ct_replace.bam.expected test-data/7_two_read_mapped.bam.expected
diffstat 8 files changed, 111 insertions(+), 60 deletions(-) [+]
line wrap: on
line diff
--- a/macros.xml	Fri Sep 28 04:28:45 2018 -0400
+++ b/macros.xml	Tue Sep 28 16:13:23 2021 +0000
@@ -5,10 +5,16 @@
             <yield/>
         </requirements>
     </xml>
-    <token name="@TOOL_VERSION@">1.9</token>
-    <token name="@FLAGS@">#set $flags = sum(map(int, str($filter).split(',')))</token>
+    <token name="@TOOL_VERSION@">1.13</token>
+    <token name="@PROFILE@">20.05</token>
+    <token name="@FLAGS@"><![CDATA[
+        #set $flags = 0
+        #if $filter
+            #set $flags = sum(map(int, str($filter).split(',')))
+        #end if
+    ]]></token>
     <token name="@PREPARE_IDX@"><![CDATA[
-        ##prepare input and indices 
+        ##prepare input and indices
         ln -s '$input' infile &&
         #if $input.is_of_type('bam'):
             #if str( $input.metadata.bam_index ) != "None":
@@ -25,7 +31,7 @@
         #end if
     ]]></token>
     <token name="@PREPARE_IDX_MULTIPLE@"><![CDATA[
-        ##prepare input and indices 
+        ##prepare input and indices
         #for $i, $bam in enumerate( $input_bams ):
             ln -s '$bam' '${i}' &&
             #if $bam.is_of_type('bam'):
@@ -63,6 +69,51 @@
             #set reffai=None
         #end if
     ]]></token>
+
+    <xml name="optional_reference">
+        <conditional name="addref_cond">
+            <param name="addref_select" type="select" label="Use a reference sequence">
+                <help>@HELP@</help>
+                <option value="no">No</option>
+                <option value="history">Use a genome/index from the history</option>
+                <option value="cached">Use a built-in genome</option>
+            </param>
+            <when value="no"/>
+            <when value="history">
+                <param name="ref" argument="@ARGUMENT@" type="data" format="fasta,fasta.gz" label="Reference"/>
+            </when>
+            <when value="cached">
+                <param name="ref" argument="@ARGUMENT@" type="select" label="Reference">
+                    <options from_data_table="fasta_indexes">
+                        <filter type="data_meta" ref="input" key="dbkey" column="dbkey"/>
+                    </options>
+                    <validator  type="no_options" message="No reference genome is available for the build associated with the selected input dataset"/>
+                </param>
+            </when>
+        </conditional>
+    </xml>
+    <xml name="mandatory_reference" token_help="" token_argument="">
+        <conditional name="addref_cond">
+            <param name="addref_select" type="select" label="Use a reference sequence">
+                <help>@HELP@</help>
+                <option value="history">Use a genome/index from the history</option>
+                <option value="cached">Use a built-in genome</option>
+            </param>
+            <when value="history">
+                <param name="ref" argument="@ARGUMENT@" type="data" format="fasta,fasta.gz" label="Reference"/>
+            </when>
+            <when value="cached">
+                <param name="ref" argument="@ARGUMENT@" type="select" label="Reference">
+                    <options from_data_table="fasta_indexes">
+                        <filter type="data_meta" ref="input" key="dbkey" column="dbkey"/>
+                        <validator message="No reference genome is available for the build associated with the selected input dataset" type="no_options" />
+                    </options>
+                </param>
+            </when>
+        </conditional>
+    </xml>
+
+
     <token name="@ADDTHREADS@"><![CDATA[
         ##compute the number of ADDITIONAL threads to be used by samtools (-@)
         addthreads=\${GALAXY_SLOTS:-1} && (( addthreads-- )) &&
@@ -70,28 +121,28 @@
     <token name="@ADDMEMORY@"><![CDATA[
         ##compute the number of memory available to samtools sort (-m)
         ##use only 75% of available: https://github.com/samtools/samtools/issues/831
-        addmemory=\${GALAXY_MEMORY_MB_PER_SLOT:-768} && 
+        addmemory=\${GALAXY_MEMORY_MB_PER_SLOT:-768} &&
         ((addmemory=addmemory*75/100)) &&
     ]]></token>
     <xml name="seed_input">
-       <param name="seed" type="integer" optional="True" label="Seed for random number generator" help="If empty a random seed is used." /> 
+       <param name="seed" type="integer" optional="True" label="Seed for random number generator" help="If empty a random seed is used." />
     </xml>
-    <xml name="flag_options">
-        <option value="1">read is paired</option>
-        <option value="2">read is mapped in a proper pair</option>
-        <option value="4">read is unmapped</option>
-        <option value="8">mate is unmapped</option>
-        <option value="16">read reverse strand</option>
-        <option value="32">mate reverse strand</option>
-        <option value="64">read is the first in a pair</option>
-        <option value="128">read is the second in a pair</option>
-        <option value="256">alignment or read is not primary</option>
-        <option value="512">read fails platform/vendor quality checks</option>
-        <option value="1024">read is a PCR or optical duplicate</option>
-        <option value="2048">supplementary alignment</option>
+    <xml name="flag_options" token_s1="false" token_s2="false" token_s4="false" token_s8="false" token_s16="false" token_s32="false" token_s64="false" token_s128="false" token_s256="false" token_s512="false" token_s1024="false" token_s2048="false">
+        <option value="1" selected="@S1@">Read is paired</option>
+        <option value="2" selected="@S2@">Read is mapped in a proper pair</option>
+        <option value="4" selected="@S4@">Read is unmapped</option>
+        <option value="8" selected="@S8@">Mate is unmapped</option>
+        <option value="16" selected="@S16@">Read is mapped to the reverse strand of the reference</option>
+        <option value="32" selected="@S32@">Mate is mapped to the reverse strand of the reference</option>
+        <option value="64" selected="@S64@">Read is the first in a pair</option>
+        <option value="128" selected="@S128@">Read is the second in a pair</option>
+        <option value="256" selected="@S256@">Alignment of the read is not primary</option>
+        <option value="512" selected="@S512@">Read fails platform/vendor quality checks</option>
+        <option value="1024" selected="@S1024@">Read is a PCR or optical duplicate</option>
+        <option value="2048" selected="@S2048@">Alignment is supplementary</option>
     </xml>
 
-    <!-- region specification macros and tokens for tools that allow the specification 
+    <!-- region specification macros and tokens for tools that allow the specification
          of region by bed file / space separated list of regions -->
     <token name="@REGIONS_FILE@"><![CDATA[
         #if $cond_region.select_region == 'tab':
--- a/samtools_fixmate.xml	Fri Sep 28 04:28:45 2018 -0400
+++ b/samtools_fixmate.xml	Tue Sep 28 16:13:23 2021 +0000
@@ -1,4 +1,4 @@
-<tool id="samtools_fixmate" name="Samtools fixmate" version="@TOOL_VERSION@">
+<tool id="samtools_fixmate" name="Samtools fixmate" version="@TOOL_VERSION@" profile="@PROFILE@">
     <description>fill mate coordinates, ISIZE and mate related flags</description>
     <macros>
         <import>macros.xml</import>
@@ -8,11 +8,11 @@
     <expand macro="version_command"/>
     <command><![CDATA[
         @ADDTHREADS@
-        ## name sort input 
+        ## name sort input
         #if not $bamfile.is_of_type('qname_sorted.bam', 'qnamed_input_sorted.bam'):
             samtools sort
-            -@ \$addthreads -m \${GALAXY_MEMORY_MB:-768}M -T sorttemp
-            -n 
+            -@ \$addthreads -m \${GALAXY_MEMORY_MB:-768}M -T "\${TMPDIR:-.}"
+            -n
             -O BAM
             -o namesorted.bam
             '$bamfile' &&
@@ -38,44 +38,44 @@
         <param name="addms" type="boolean" argument="-m" truevalue="-m" falsevalue="" checked="false" label="Add ms (mate score) tags" help="These are used by markdup to select the best reads to keep." />
     </inputs>
     <outputs>
-	<!--<data name="output" format="sam" />-->
-	<data name="output" format="qname_sorted.bam"/>
+	   <!--<data name="output" format="sam" />-->
+	   <data name="output" format="qname_sorted.bam"/>
     </outputs>
     <tests>
-<!-- from https://github.com/samtools/samtools/blob/6d79411685d8f0fbb34e123f52d72b63271f4dcb/test/test.pl#L2493-->
-<!--    test_cmd($opts,out=>'fixmate/1_coord_sort.sam.expected', err=>'fixmate/1_coord_sort.sam.expected.err', cmd=>"$$opts{bin}/samtools fixmate${threads} -O sam $$opts{path}/fixmate/1_coord_sort.sam -", expect_fail=>1);-->
-<test>
-    <param name="bamfile" value="2_isize_overflow.sam" />
-    <output name="output" file="2_isize_overflow.bam.expected" />
-</test>
-<!--    test_cmd($opts,out=>'fixmate/2_isize_overflow.bam.expected', cmd=>"$$opts{bin}/samtools fixmate${threads} -O sam $$opts{path}/fixmate/2_isize_overflow.sam -");-->
-<test>
-    <param name="bamfile" value="3_reverse_read_pp_lt.sam" />
-    <output name="output" file="3_reverse_read_pp_lt.bam.expected" />
-</test>
-<!--    test_cmd($opts,out=>'fixmate/3_reverse_read_pp_lt.bam.expected', cmd=>"$$opts{bin}/samtools fixmate${threads} -O sam $$opts{path}/fixmate/3_reverse_read_pp_lt.sam -");-->
-<test>
-    <param name="bamfile" value="4_reverse_read_pp_equal.sam" />
-    <output name="output" file="4_reverse_read_pp_equal.bam.expected" />
-</test>
-<!--    test_cmd($opts,out=>'fixmate/4_reverse_read_pp_equal.bam.expected', cmd=>"$$opts{bin}/samtools fixmate${threads} -O sam $$opts{path}/fixmate/4_reverse_read_pp_equal.sam -");-->
-<test>
-    <param name="bamfile" value="5_ct.sam" />
-    <param name="tempcigar" value="-c" />
-    <output name="output" file="5_ct.bam.expected" />
-</test>
-<!--    test_cmd($opts,out=>'fixmate/5_ct.bam.expected', cmd=>"$$opts{bin}/samtools fixmate${threads} -cO sam $$opts{path}/fixmate/5_ct.sam -");-->
-<test>
-    <param name="bamfile" value="6_ct_replace.sam" />
-    <param name="tempcigar" value="-c" />
-    <output name="output" file="6_ct_replace.bam.expected" />
-</test>
-<!--    test_cmd($opts,out=>'fixmate/6_ct_replace.bam.expected', cmd=>"$$opts{bin}/samtools fixmate${threads} -cO sam $$opts{path}/fixmate/6_ct_replace.sam -");-->
-<test>
-    <param name="bamfile" value="7_two_read_mapped.sam" />
-    <output name="output" file="7_two_read_mapped.bam.expected" />
-</test>
-<!--test_cmd($opts,out=>'fixmate/7_two_read_mapped.bam.expected', cmd=>"$$opts{bin}/samtools fixmate${threads} -O sam $$opts{path}/fixmate/7_two_read_mapped.sam -");-->
+        <!-- from https://github.com/samtools/samtools/blob/6d79411685d8f0fbb34e123f52d72b63271f4dcb/test/test.pl#L2493-->
+        <!--    test_cmd($opts,out=>'fixmate/1_coord_sort.sam.expected', err=>'fixmate/1_coord_sort.sam.expected.err', cmd=>"$$opts{bin}/samtools fixmate${threads} -O sam $$opts{path}/fixmate/1_coord_sort.sam -", expect_fail=>1);-->
+        <test>
+            <param name="bamfile" value="2_isize_overflow.sam" ftype="sam" />
+            <output name="output" file="2_isize_overflow.bam.expected" ftype="qname_sorted.bam" lines_diff="4" />
+        </test>
+        <!--    test_cmd($opts,out=>'fixmate/2_isize_overflow.bam.expected', cmd=>"$$opts{bin}/samtools fixmate${threads} -O sam $$opts{path}/fixmate/2_isize_overflow.sam -");-->
+        <test>
+            <param name="bamfile" value="3_reverse_read_pp_lt.sam" ftype="sam" />
+            <output name="output" file="3_reverse_read_pp_lt.bam.expected" ftype="qname_sorted.bam" lines_diff="4" />
+        </test>
+        <!--    test_cmd($opts,out=>'fixmate/3_reverse_read_pp_lt.bam.expected', cmd=>"$$opts{bin}/samtools fixmate${threads} -O sam $$opts{path}/fixmate/3_reverse_read_pp_lt.sam -");-->
+        <test>
+            <param name="bamfile" value="4_reverse_read_pp_equal.sam" ftype="sam" />
+            <output name="output" file="4_reverse_read_pp_equal.bam.expected" ftype="qname_sorted.bam" lines_diff="4" />
+        </test>
+        <!--    test_cmd($opts,out=>'fixmate/4_reverse_read_pp_equal.bam.expected', cmd=>"$$opts{bin}/samtools fixmate${threads} -O sam $$opts{path}/fixmate/4_reverse_read_pp_equal.sam -");-->
+        <test>
+            <param name="bamfile" value="5_ct.sam" ftype="sam" />
+            <param name="tempcigar" value="-c" />
+            <output name="output" file="5_ct.bam.expected" ftype="qname_sorted.bam" lines_diff="4" />
+        </test>
+        <!--    test_cmd($opts,out=>'fixmate/5_ct.bam.expected', cmd=>"$$opts{bin}/samtools fixmate${threads} -cO sam $$opts{path}/fixmate/5_ct.sam -");-->
+        <test>
+            <param name="bamfile" value="6_ct_replace.sam" ftype="sam" />
+            <param name="tempcigar" value="-c" />
+            <output name="output" file="6_ct_replace.bam.expected" ftype="qname_sorted.bam" lines_diff="4" />
+        </test>
+        <!--    test_cmd($opts,out=>'fixmate/6_ct_replace.bam.expected', cmd=>"$$opts{bin}/samtools fixmate${threads} -cO sam $$opts{path}/fixmate/6_ct_replace.sam -");-->
+        <test>
+            <param name="bamfile" value="7_two_read_mapped.sam" ftype="sam" />
+            <output name="output" file="7_two_read_mapped.bam.expected" ftype="qname_sorted.bam" lines_diff="4" />
+        </test>
+        <!--test_cmd($opts,out=>'fixmate/7_two_read_mapped.bam.expected', cmd=>"$$opts{bin}/samtools fixmate${threads} -O sam $$opts{path}/fixmate/7_two_read_mapped.sam -");-->
     </tests>
     <help>
 **What it does**
Binary file test-data/2_isize_overflow.bam.expected has changed
Binary file test-data/3_reverse_read_pp_lt.bam.expected has changed
Binary file test-data/4_reverse_read_pp_equal.bam.expected has changed
Binary file test-data/5_ct.bam.expected has changed
Binary file test-data/6_ct_replace.bam.expected has changed
Binary file test-data/7_two_read_mapped.bam.expected has changed