diff align_seqs.xml @ 0:56adf8db7ce7 draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/qiime/ commit c9bf747b23b4a9d6adc20c7740b9247c22654862
author iuc
date Thu, 18 May 2017 09:33:27 -0400
parents
children 98614f0549e3
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/align_seqs.xml	Thu May 18 09:33:27 2017 -0400
@@ -0,0 +1,289 @@
+<tool id="qiime_align_seqs" name="Align sequences" version="@WRAPPER_VERSION@.0">
+    <description>using a variety of alignment methods</description>
+    <macros>
+        <import>macros.xml</import>
+    </macros>
+    <expand macro="requirements">
+        <requirement type="package" version="1.0.2">infernal</requirement>
+        <requirement type="package" version="2.1">clustalw</requirement>
+        <requirement type="package" version="3.8.1551">muscle</requirement>
+        <requirement type="package" version="7.305">mafft</requirement>
+        <requirement type="package" version="2.2.22">blast-legacy</requirement>
+    </expand>
+    <version_command>align_seqs.py --version</version_command>
+    <command detect_errors="aggressive"><![CDATA[
+        align_seqs.py
+            --input_fasta_fp '$input_fasta_fp'
+            -o output
+            --alignment_method '$alignment.alignment_method'
+            #if $alignment.alignment_method == 'pynast'
+                --pairwise_alignment_method '$alignment.pairwise_alignment_method'
+                #if str($alignment.template_fp) != 'None':
+                    --template_fp '$alignment.template_fp'
+                #end if
+            #elif $alignment.alignment_method == 'infernal'
+                --template_fp '$alignment.template_fp'
+            #end if
+
+            #if $min_length:
+                --min_length '$min_length'
+            #end if
+            --min_percent_id '$min_percent_id'
+    ]]></command>
+    <inputs>
+        <param argument="--input_fasta_fp" type="data" format="fasta" label="Input fasta file"/>
+        <conditional name="alignment">
+            <param argument="--alignment_method" type="select" label="Method for aligning sequences">
+                <option value="pynast" selected="True">pynast</option>
+                <option value="infernal">infernal</option>
+                <option value="clustalw">clustalw</option>
+                <option value="muscle">muscle</option>
+                <option value="mafft">mafft</option>
+            </param>
+            <when value="pynast">
+                <param argument="--pairwise_alignment_method" type="select" label="Method for performing pairwise alignment in PyNAST">
+                    <option value="muscle">muscle</option>
+                    <option value="pair_hmm">pair_hmm</option>
+                    <option value="clustal">clustal</option>
+                    <option value="blast">blast</option>
+                    <option value="uclust" selected="True">uclust</option>
+                    <option value="mafft">mafft</option>
+                </param>
+                <param argument="--template_fp" type="data" format="fasta" optional="True" label="Fasta file for template alignment"/>
+            </when>
+            <when value="infernal">
+                <param argument="--template_fp" type="data" format="stockholm" label="Stockholm file with a corresponding secondary structure annotation"/>
+            </when>
+            <when value="clustalw"/>
+            <when value="muscle"/>
+            <when value="mafft"/>
+        </conditional>
+        <param argument="--min_length" type="integer" optional="True" label="Minimum sequence length to include in alignment" help="By default, 75% of the median input sequence length"/>
+        <param argument="--min_percent_id" type="float" value="0.75" label="Minimum percent sequence identity to closest blast hit to include sequence in alignment"/>
+    </inputs>
+    <outputs>
+        <data name="aligned_sequences" format="fasta" from_work_dir="output/*_aligned.fasta" label="${tool.name} on ${on_string}: Aligned sequences"/>
+        <data name="failures_sequences" format="fasta" from_work_dir="output/*_failures.fasta" label="${tool.name} on ${on_string}: Failure sequences">
+            <filter>alignment['alignment_method'] == 'pynast'</filter>
+        </data>
+        <data name="log" format="txt" from_work_dir="output/*_log.txt" label="${tool.name} on ${on_string}: Log"/>
+    </outputs>
+    <tests>
+        <test><!-- 1 -->
+            <param name="input_fasta_fp" value="align_seqs/unaligned.fna"/>
+            <param name="alignment_method" value="pynast"/>
+            <param name="pairwise_alignment_method" value="uclust" />
+            <param name="min_percent_id" value="0.75"/>
+            <param name="template_fp" value="align_seqs/core_set_aligned.fasta.imputed"/>
+            <output name="aligned_sequences">
+                <assert_contents>
+                    <has_text text="r0 PC.634_176 RC:1..246"/>
+                    <has_text text="r102 PC.634_91 RC:1..238"/>
+                    <has_text text="New.0.CleanUp.ReferenceOTU9 PC.355_327 RC:1..244"/>
+                </assert_contents>
+            </output>
+            <output name="failures_sequences">
+                <assert_contents>
+                    <has_text text="r111 PC.634_173"/>
+                    <has_text text="New.0.ReferenceOTU52 PC.636_379"/>
+                    <has_text text="New.0.CleanUp.ReferenceOTU33 PC.607_365"/>
+                </assert_contents>
+            </output>
+            <output name="log">
+                <assert_contents>
+                    <has_text text="PC.634_176"/>
+                    <has_text text="New.0.ReferenceOTU13"/>
+                    <has_text text="min_len:176"/>
+                </assert_contents>
+            </output>
+        </test>
+        <test><!-- 2 -->
+            <param name="input_fasta_fp" value="align_seqs/unaligned.fna"/>
+            <param name="alignment_method" value="pynast"/>
+            <param name="pairwise_alignment_method" value="muscle" />
+            <param name="min_length" value="50" />
+            <param name="min_percent_id" value="0.75" />
+            <output name="aligned_sequences">
+                <assert_contents>
+                    <has_text text="r0 PC.634_176 RC:1..246"/>
+                    <has_text text="r102 PC.634_91 RC:1..238"/>
+                    <has_text text="New.0.CleanUp.ReferenceOTU9 PC.355_327 RC:1..244"/>
+                </assert_contents>
+            </output>
+            <output name="failures_sequences" md5="d41d8cd98f00b204e9800998ecf8427e"/>
+            <output name="log">
+                <assert_contents>
+                    <has_text text="PC.634_176"/>
+                    <has_text text="New.0.ReferenceOTU13"/>
+                    <has_text text="min_len:50"/>
+                </assert_contents>
+            </output>
+        </test>
+        <test><!-- 3 -->
+            <param name="input_fasta_fp" value="align_seqs/unaligned.fna"/>
+            <param name="alignment_method" value="pynast"/>
+            <param name="pairwise_alignment_method" value="pair_hmm" />
+            <param name="min_percent_id" value="0.75" />
+            <output name="aligned_sequences">
+                <assert_contents>
+                    <has_text text="r0 PC.634_176 RC:1..246"/>
+                    <has_text text="r102 PC.634_91 RC:1..238"/>
+                    <has_text text="New.0.CleanUp.ReferenceOTU9 PC.355_327 RC:1..244"/>
+                </assert_contents>
+            </output>
+            <output name="failures_sequences" md5="d41d8cd98f00b204e9800998ecf8427e"/>
+            <output name="log">
+                <assert_contents>
+                    <has_text text="PC.634_176"/>
+                    <has_text text="New.0.ReferenceOTU13"/>
+                    <has_text text="min_len:176"/>
+                </assert_contents>
+            </output>
+        </test>
+        <test><!-- 4 -->
+            <param name="input_fasta_fp" value="align_seqs/unaligned.fna"/>
+            <param name="alignment_method" value="pynast"/>
+            <param name="pairwise_alignment_method" value="clustal" />
+            <param name="min_percent_id" value="0.75" />
+            <output name="aligned_sequences">
+                <assert_contents>
+                    <has_text text="PC.634_176"/>
+                    <has_text text="ReferenceOTU7"/>
+                </assert_contents>
+            </output>
+            <output name="failures_sequences" md5="d41d8cd98f00b204e9800998ecf8427e"/>
+            <output name="log">
+                <assert_contents>
+                    <has_text text="PC.634_176"/>
+                    <has_text text="ReferenceOTU7"/>
+                </assert_contents>
+            </output>
+        </test>
+        <test><!-- 5 -->
+            <param name="input_fasta_fp" value="align_seqs/unaligned.fna"/>
+            <param name="alignment_method" value="pynast"/>
+            <param name="pairwise_alignment_method" value="blast" />
+            <param name="min_percent_id" value="0.75" />
+            <output name="aligned_sequences">
+                <assert_contents>
+                    <has_text text="r0 PC.634_176 RC:1..246"/>
+                    <has_text text="r102 PC.634_91 RC:1..238"/>
+                    <has_text text="New.0.CleanUp.ReferenceOTU9 PC.355_327 RC:1..244"/>
+                </assert_contents>
+            </output>
+            <output name="failures_sequences" md5="d41d8cd98f00b204e9800998ecf8427e"/>
+            <output name="log">
+                <assert_contents>
+                    <has_text text="PC.634_176"/>
+                    <has_text text="New.0.ReferenceOTU13"/>
+                    <has_text text="min_len:176"/>
+                </assert_contents>
+            </output>
+        </test>
+        <test><!-- 6 -->
+            <param name="input_fasta_fp" value="align_seqs/unaligned.fna"/>
+            <param name="alignment_method" value="pynast"/>
+            <param name="pairwise_alignment_method" value="mafft" />
+            <param name="min_percent_id" value="0.75" />
+            <output name="aligned_sequences">
+                <assert_contents>
+                    <has_text text="r0 PC.634_176 RC:1..246"/>
+                    <has_text text="r102 PC.634_91 RC:1..238"/>
+                    <has_text text="New.0.CleanUp.ReferenceOTU9 PC.355_327 RC:1..244"/>
+                </assert_contents>
+            </output>
+            <output name="failures_sequences" md5="d41d8cd98f00b204e9800998ecf8427e"/>
+            <output name="log">
+                <assert_contents>
+                    <has_text text="PC.634_176"/>
+                    <has_text text="New.0.ReferenceOTU13"/>
+                    <has_text text="min_len:176"/>
+                </assert_contents>
+            </output>
+        </test>
+        <!-- TODO: fix infernal test -->
+        <!--<test><!- - 7 - ->
+            <param name="input_fasta_fp" value="align_seqs/unaligned.fna"/>
+            <param name="alignment_method" value="infernal"/>
+            <param name="template_fp" value="align_seqs/core_set_aligned.fasta.imputed"/>
+            <output name="aligned_sequences">
+                <assert_contents>
+                    <has_text text="PC.356_295"/>
+                    <has_text text="ReferenceOTU28"/>
+                </assert_contents>
+            </output>
+            <output name="log">
+                <assert_contents>
+                    <has_text text="PC.356_295"/>
+                    <has_text text="ReferenceOTU28"/>
+                </assert_contents>
+            </output>
+        </test>-->
+        <test><!-- 8 -->
+            <param name="input_fasta_fp" value="align_seqs/unaligned.fna"/>
+            <param name="alignment_method" value="clustalw"/>
+            <param name="min_percent_id" value="0.75" />
+            <output name="aligned_sequences">
+                <assert_contents>
+                    <has_text text="PC.356_295"/>
+                    <has_text text="ReferenceOTU28"/>
+                </assert_contents>
+            </output>
+            <output name="log">
+                <assert_contents>
+                    <has_text text="CogentAligner"/>
+                </assert_contents>
+            </output>
+        </test>
+        <test><!-- 9 -->
+            <param name="input_fasta_fp" value="align_seqs/unaligned.fna"/>
+            <param name="alignment_method" value="muscle"/>
+            <param name="min_percent_id" value="0.75" />
+            <output name="aligned_sequences">
+                <assert_contents>
+                    <has_text text="r143 PC.356_295"/>
+                    <has_text text="r70 PC.593_22"/>
+                    <has_text text="r178 PC.634_139"/>
+                </assert_contents>
+            </output>
+            <output name="log">
+                <assert_contents>
+                    <has_text text="CogentAligner parameters"/>
+                    <has_text text="Method:muscle"/>
+                </assert_contents>
+            </output>
+        </test>
+        <test><!-- 10 -->
+            <param name="input_fasta_fp" value="align_seqs/unaligned.fna"/>
+            <param name="alignment_method" value="mafft"/>
+            <param name="min_percent_id" value="0.75" />
+            <output name="aligned_sequences">
+                <assert_contents>
+                    <has_text text="r143 PC.356_295"/>
+                    <has_text text="r175 PC.634_133"/>
+                    <has_text text="r178 PC.634_139"/>
+                </assert_contents>
+            </output>
+            <output name="log">
+                <assert_contents>
+                    <has_text text="CogentAligner parameters"/>
+                    <has_text text="Method:mafft"/>
+                </assert_contents>
+            </output>
+        </test>
+    </tests>
+    <help><![CDATA[
+**What it does**
+
+This tool aligns the sequences in a FASTA file to each other or to a template sequence alignment, depending on the method chosen.
+
+More information about this tool is available on
+`QIIME documentation <http://qiime.org/scripts/align_seqs.html>`_.
+    ]]></help>
+    <citations>
+        <expand macro="citations"/>
+        <citation type="doi">10.1093/bioinformatics/btp636</citation>
+        <citation type="doi">10.1093/nar/gkh340</citation>
+        <citation type="doi">10.1093/bioinformatics/btp157</citation>
+    </citations>
+</tool>