diff amova.xml @ 2:fcb95815087f draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/mothur commit 3418f23b9768f5aafb86488f5ec1cb97530d4fb3
author iuc
date Tue, 20 Mar 2018 22:16:06 -0400
parents 0d34975c52a0
children 5aa5d26efeea
line wrap: on
line diff
--- a/amova.xml	Tue Sep 05 16:50:51 2017 -0400
+++ b/amova.xml	Tue Mar 20 22:16:06 2018 -0400
@@ -7,43 +7,49 @@
     <expand macro="stdio"/>
     <expand macro="version_command"/>
     <command><![CDATA[
-        @SHELL_OPTIONS@
+@SHELL_OPTIONS@
 
-        ## create symlinks to input datasets
-        ln -s "$dist" dist.dat &&
-        ln -s "$design" design.dat &&
+## create symlinks to input datasets
+ln -s '$phylip' phylip.dat &&
+ln -s '$design' design.dat &&
 
-        echo 'amova(
-            phylip=dist.dat,
-            iters=$iters,
-            alpha=$alpha,
-            #if $sets:
-                sets=$sets,
-            #end if
-            design=design.dat
-        )'
-        | sed 's/ //g'  ## mothur trips over whitespace
-        | mothur
-        | tee mothur.out.log
+echo 'amova(
+    phylip=phylip.dat,
+    iters=$iters,
+    alpha=$alpha,
+    #if $sets:
+        sets=${ str($sets).replace(",","-") },
+    #end if
+    design=design.dat
+)'
+| sed 's/ //g'  ## mothur trips over whitespace
+| mothur
+| tee mothur.out.log
     ]]></command>
     <inputs>
-        <param name="dist" type="data" format="mothur.dist,mothur.lower.dist,mothur.square.dist" label="phylip - Distance Matrix"/>
-        <param name="design" type="data" format="mothur.design" label="design - assign groups to new grouping" help="design has 2 TAB-separated columns: group and grouping (Tool: Make_Design)"/>
-        <param name="alpha" type="float" optional="true" min="0" value="0.05" label="alpha - acceptable stopping precision (default 0.05)"/>
-        <param name="iters" type="integer" value="1000" min="0" label="iters - Number of random configuration to try (default 1000)"/>
-        <param name="sets" type="select" multiple="true" label="sets - Which of the sets in your design file you would like to analyze." help="The set names are separated by dashes. The defualt is all sets in designfile">
+        <param argument="phylip" type="data" format="mothur.dist,mothur.lower.dist,mothur.square.dist" label="phylip - Distance Matrix"/>
+        <param argument="design" type="data" format="mothur.design" label="design - assign groups to new grouping"
+            help="design has 2 TAB-separated columns: group and grouping (Tool: Make_Design)"/>
+        <param argument="alpha" type="float" optional="true" min="0" value="0.05" label="alpha - acceptable stopping precision" help="default: 0.05"/>
+        <param argument="iters" type="integer" value="1000" min="0" label="iters - Number of random configuration to try" help="default: 1000"/>
+        <param name="sets" type="text" label="sets - Which of the sets in your design file you would like to analyze?" help="separate sets by dashes or commas, e.g. set1,set2 or set1-set2-set3"/>
+        <!-- TODO: update galaxy datatypes to set metadata for design files, then can switch to a select box
+        <param argument="sets" type="select" multiple="true" label="sets - Which of the sets in your design file you would like to analyze."
+            help="The set names are separated by dashes. The defualt is all sets in designfile">
             <options>
                 <filter type="data_meta" ref="design" key="sets"/>
             </options>
         </param>
+        -->
+        <expand macro="param-savelog"/>
     </inputs>
     <outputs>
         <expand macro="logfile-output"/>
-        <data name="amova" format="tabular" from_work_dir="dist.amova" label="${tool.name} on ${on_string}: amova"/>
+        <data name="amova" format="tabular" from_work_dir="phylip.amova" label="${tool.name} on ${on_string}: amova"/>
     </outputs>
     <tests>
         <test>
-            <param name="dist" value="amazon.dist"/>
+            <param name="phylip" value="amazon.dist"/>
             <param name="design" value="amazon.design"/>
             <output name="amova" ftype="tabular">
                 <assert_contents>
@@ -54,17 +60,36 @@
                     <has_text text="p-value"/>
                 </assert_contents>
             </output>
+            <param name="savelog" value="true"/>
+            <expand macro="logfile-test"/>
+        </test>
+        <test><!-- test with sets specified -->
+            <param name="phylip" value="amazon.dist"/>
+            <param name="design" value="amazon.design"/>
+            <param name="sets" value="A,B"/>
+            <output name="amova" ftype="tabular">
+                <assert_contents>
+                    <has_line_matching expression="^A-B\tAmong\tWithin\tTotal$"/>
+                    <has_line_matching expression="^SS\t[0-9\.]+\t[0-9\.]+\t[0-9\.]+$"/>
+                    <has_line_matching expression="^df\t[0-9\.]+\t[0-9\.]+\t[0-9\.]+$"/>
+                    <has_line_matching expression="^MS\t[0-9\.]+\t[0-9\.]+$"/>
+                    <has_text text="p-value"/>
+                </assert_contents>
+            </output>
+            <param name="savelog" value="true"/>
             <expand macro="logfile-test"/>
         </test>
     </tests>
-    <help>
-<![CDATA[
+    <help><![CDATA[
 
 @MOTHUR_OVERVIEW@
 
 **Command Documentation**
 
-The amova_ command calculates the analysis of molecular variance from a phylip_distance_matrix_, a nonparametric analog of traditional analysis of variance. This method is widely used in population genetics to test the hypothesis that genetic diversity within two populations is not significantly different from that which would result from pooling the two populations.
+The amova_ command calculates the analysis of molecular variance from a phylip_distance_matrix_,
+a nonparametric analog of traditional analysis of variance. This method is widely used in population
+genetics to test the hypothesis that genetic diversity within two populations is not significantly
+different from that which would result from pooling the two populations.
 
 A design file partitions a list of names into groups.  It is a tab-delimited file with 2 columns: name and group, e.g. :
 	=======	=======
@@ -81,7 +106,6 @@
 .. _phylip_distance_matrix: https://www.mothur.org/wiki/Phylip-formatted_distance_matrix
 .. _amova: https://www.mothur.org/wiki/Amova
 
-]]>
-    </help>
+    ]]></help>
     <expand macro="citations"/>
 </tool>