changeset 7:b1e68bbe4cef draft default tip

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/raxml commit ca98a256623d6636805d6fbc4ff85fb7465b2f90
author iuc
date Sat, 18 Nov 2023 23:18:58 +0000
parents ea30d3089354
children
files raxml.py raxml.xml test-data/RAxML_parsimonyTree.galaxy.multi
diffstat 3 files changed, 62 insertions(+), 77 deletions(-) [+]
line wrap: on
line diff
--- a/raxml.py	Sat Nov 05 17:42:11 2022 +0000
+++ b/raxml.py	Sat Nov 18 23:18:58 2023 +0000
@@ -85,12 +85,6 @@
             with open('RAxML_resultPartitions.galaxy', 'w') as outfile:
                 outfile.write("No partition files were produced.\n")
 
-    # DEBUG options
-    with open('RAxML_info.galaxy', 'a') as infof:
-        infof.write('\nOM: CLI options DEBUG START:\n')
-        infof.write(options.__repr__())
-        infof.write('\nOM: CLI options DEBUG END\n')
-
 
 if __name__ == "__main__":
     __main__()
--- a/raxml.xml	Sat Nov 05 17:42:11 2022 +0000
+++ b/raxml.xml	Sat Nov 18 23:18:58 2023 +0000
@@ -1,8 +1,8 @@
-<tool id="raxml" name="Phyogenetic reconstruction with RAxML" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@">
-    <description>- Maximum Likelihood based inference of large phylogenetic trees</description>
+<tool id="raxml" name="RAxML" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="22.01">
+    <description>Maximum Likelihood based inference of large phylogenetic trees</description>
     <macros>
         <token name="@TOOL_VERSION@">8.2.12</token>
-        <token name="@VERSION_SUFFIX@">0</token>
+        <token name="@VERSION_SUFFIX@">1</token>
     </macros>
     <xrefs>
         <xref type="bio.tools">raxml</xref>
@@ -346,137 +346,129 @@
         </conditional>
     </inputs>
     <outputs>
-        <data format="txt" name="info" from_work_dir="RAxML_info.galaxy" label="Info" />
+        <data format="txt" name="info" from_work_dir="RAxML_info.galaxy" label="${tool.name} on ${on_string}: Info" />
         <!-- REQUIRED -->
-        <data format="txt" name="logReq" from_work_dir="RAxML_log.galaxy" label="Log">
-            <filter>selExtraOpts['extraOptions'] == 'required'</filter>
-            <filter>selExtraOpts['search_algorithm'] != 'a'</filter>
+        <data format="txt" name="log" from_work_dir="RAxML_log.galaxy" label="${tool.name} on ${on_string}: Log">
+            <filter>selExtraOpts['extraOptions'] == 'required' or (selExtraOpts['extraOptions'] == "full" and selExtraOpts['rapid_bootstrap_random_seed'] == '' and selExtraOpts['bootseed'] == '' and selExtraOpts['search_algorithm'] != 'a' and selExtraOpts['search_algorithm'] != 'b' and not selExtraOpts['majority_rule_consensus'])</filter>
         </data>
-        <data format="nhx" name="parsimonyTreeReq" from_work_dir="RAxML_parsimonyTree.galaxy" label="Parsimony Tree">
-            <filter>selExtraOpts['extraOptions'] == 'required'</filter>
-            <filter>selExtraOpts['search_algorithm'] != 'a'</filter>
+
+        <data format="nhx" name="parsimonyTree" from_work_dir="RAxML_parsimonyTree.galaxy" label="${tool.name} on ${on_string}: Parsimony Tree">
+            <filter>selExtraOpts['extraOptions'] != "required" or selExtraOpts['search_algorithm'] != 'a'</filter>
         </data>
-        <data format="nhx" name="resultReq" from_work_dir="RAxML_result.galaxy" label="Result">
-            <filter>selExtraOpts['extraOptions'] == 'required'</filter>
-            <filter>selExtraOpts['search_algorithm'] != 'a'</filter>
+        <data format="nhx" name="result" from_work_dir="RAxML_result.galaxy" label="${tool.name} on ${on_string}: Result">
+            <filter>selExtraOpts['extraOptions'] == 'required' or (selExtraOpts['extraOptions'] == "full" and selExtraOpts['rapid_bootstrap_random_seed'] == '' and selExtraOpts['bootseed'] == '' and selExtraOpts['search_algorithm'] != 'a' and selExtraOpts['search_algorithm'] != 'b' and not selExtraOpts['majority_rule_consensus'])</filter>
         </data>
         <!-- ADVANCED -->
-        <data format="nhx" name="randomTree" from_work_dir="RAxML_randomTree.galaxy" label="Random Tree">
+        <data format="nhx" name="randomTree" from_work_dir="RAxML_randomTree.galaxy" label="${tool.name} on ${on_string}: Random Tree">
             <filter>selExtraOpts['search_complete_random_tree'] is True</filter>
             <filter>selExtraOpts['extraOptions'] == "full"</filter>
         </data>
-        <data format="nhx" name="bestTree" from_work_dir="RAxML_bestTree.galaxy" label="Best-scoring ML Tree">
-            <!--    <filter>selExtraOpts['extraOptions'] == 'full'</filter> -->
-            <!-- <filter>selExtraOpts['search_algorithm'] != 'b'</filter>
-            <filter>not selExtraOpts['majority_rule_consensus']</filter> -->
-        </data>
-        <data format="nhx" name="bestTreeMultipleModel" from_work_dir="RAxML_bestTree.galaxy" label="Best-scoring ML Tree">
-            <filter>selExtraOpts['extraOptions'] == "full"</filter>
-            <filter>selExtraOpts['multiple_model'] != ''</filter>
-        </data>
-        <data format="txt" name="bestTreeMultipleModelPartitions" from_work_dir="RAxML_bestTreePartitions.galaxy" label="Best-scoring ML Tree Partitions">
+        <data format="nhx" name="bestTree" from_work_dir="RAxML_bestTree.galaxy" label="${tool.name} on ${on_string}: Best-scoring ML Tree"/>
+
+        <data format="txt" name="bestTreeMultipleModelPartitions" from_work_dir="RAxML_bestTreePartitions.galaxy" label="${tool.name} on ${on_string}: Best-scoring ML Tree Partitions">
             <filter>selExtraOpts['extraOptions'] == "full"</filter>
             <filter>selExtraOpts['multiple_model'] is not None </filter>
         </data>
-        <data format="txt" name="log" from_work_dir="RAxML_log.galaxy" label="Log">
-            <filter>selExtraOpts['extraOptions'] == "full"</filter>
-            <filter>selExtraOpts['rapid_bootstrap_random_seed'] == ''</filter>
-            <filter>selExtraOpts['bootseed'] == ''</filter>
-            <filter>selExtraOpts['search_algorithm'] != 'a'</filter>
-            <filter>selExtraOpts['search_algorithm'] != 'b'</filter>
-            <filter>not selExtraOpts['majority_rule_consensus']</filter>
-        </data>
-        <data format="nhx" name="result" from_work_dir="RAxML_result.galaxy" label="Result">
-            <filter>selExtraOpts['extraOptions'] == "full"</filter>
-            <filter>selExtraOpts['rapid_bootstrap_random_seed'] == ''</filter>
-            <filter>selExtraOpts['bootseed'] == ''</filter>
-            <filter>selExtraOpts['search_algorithm'] != 'a'</filter>
-            <filter>selExtraOpts['search_algorithm'] != 'b'</filter>
-            <filter>not selExtraOpts['majority_rule_consensus']</filter>
-        </data>
-        <data format="txt" name="resultMultipleModelPartitions" from_work_dir="RAxML_resultPartitions.galaxy" label="Result Partitions">
+
+        <data format="txt" name="resultMultipleModelPartitions" from_work_dir="RAxML_resultPartitions.galaxy" label="${tool.name} on ${on_string}: Result Partitions">
             <filter>selExtraOpts['extraOptions'] == "full"</filter>
             <filter>selExtraOpts['multiple_model'] is not None</filter>
         </data>
-        <data format="nhx" name="parsimonyTree" from_work_dir="RAxML_parsimonyTree.galaxy" label="Parsimony Tree">
-            <filter>selExtraOpts['extraOptions'] == "full"</filter>
-        <!--
-            <filter>selExtraOpts['rapid_bootstrap_random_seed'] == ''</filter>
-            <filter>selExtraOpts['bootseed'] == ''</filter>
-            <filter>selExtraOpts['search_algorithm'] != 'a'</filter>
-            <filter>selExtraOpts['constraint_file'] is None</filter>
-            <filter>selExtraOpts['groupingfile'] is None</filter>
-            <filter>selExtraOpts['search_complete_random_tree'] is False</filter>
-            <filter>selExtraOpts['start_tree_file'] is None</filter>
-            <filter>not selExtraOpts['majority_rule_consensus'] == ''</filter>
-        -->
-        </data>
-        <data format="nhx" name="bootstrap" from_work_dir="RAxML_bootstrap.galaxy" label="Final Bootstrap Trees">
+
+        <data format="nhx" name="bootstrap" from_work_dir="RAxML_bootstrap.galaxy" label="${tool.name} on ${on_string}: Final Bootstrap Trees">
             <filter>selExtraOpts['extraOptions'] == "full"</filter>
             <filter>selExtraOpts['number_of_runs'] != '' or selExtraOpts['number_of_runs_bootstop'] != ''</filter>
             <filter>selExtraOpts['rapid_bootstrap_random_seed'] != '' or selExtraOpts['bootseed'] != ''</filter>
         </data>
-        <data format="txt" name="bipartitions" from_work_dir="RAxML_bipartitions.galaxy" label="Bipartitions">
+        <data format="txt" name="bipartitions" from_work_dir="RAxML_bipartitions.galaxy" label="${tool.name} on ${on_string}: Bipartitions">
             <filter>selExtraOpts['search_algorithm'] == 'b' or (selExtraOpts['search_algorithm'] == 'a' and selExtraOpts['rapid_bootstrap_random_seed'] != '') </filter>
             <filter>selExtraOpts['extraOptions'] == "full"</filter>
         </data>
-        <data format="txt" name="bipartitionsBranchLabels" from_work_dir="RAxML_bipartitionsBranchLabels.galaxy" label="Bipartitions Branch Labels">
+        <data format="txt" name="bipartitionsBranchLabels" from_work_dir="RAxML_bipartitionsBranchLabels.galaxy" label="${tool.name} on ${on_string}: Bipartitions Branch Labels">
             <filter>selExtraOpts['extraOptions'] == "full"</filter>
             <filter>selExtraOpts['search_algorithm'] == 'b' or (selExtraOpts['search_algorithm'] == 'a' and selExtraOpts['rapid_bootstrap_random_seed'] != '') </filter>
         </data>
-        <data format="nhx" name="strictConsensusTree" from_work_dir="RAxML_StrictConsensusTree.galaxy" label="Strict Consensus Tree">
+        <data format="nhx" name="strictConsensusTree" from_work_dir="RAxML_StrictConsensusTree.galaxy" label="${tool.name} on ${on_string}: Strict Consensus Tree">
             <filter>selExtraOpts['extraOptions'] == "full"</filter>
             <filter>selExtraOpts['majority_rule_consensus'] == 'STRICT'</filter>
         </data>
-        <data format="nhx" name="majorityRuleConsensusTree" from_work_dir="RAxML_MajorityRuleConsensusTree.galaxy" label="Majority Rule Consensus Tree">
+        <data format="nhx" name="majorityRuleConsensusTree" from_work_dir="RAxML_MajorityRuleConsensusTree.galaxy" label="${tool.name} on ${on_string}: Majority Rule Consensus Tree">
             <filter>selExtraOpts['extraOptions'] == "full"</filter>
             <filter>selExtraOpts['majority_rule_consensus'] == 'MR'</filter>
         </data>
-        <data format="nhx" name="majorityRuleExtendedConsensusTree" from_work_dir="RAxML_MajorityRuleExtendedConsensusTree.galaxy" label="Majority Rule Extended Consensus Tree">
+        <data format="nhx" name="majorityRuleExtendedConsensusTree" from_work_dir="RAxML_MajorityRuleExtendedConsensusTree.galaxy" label="${tool.name} on ${on_string}: Majority Rule Extended Consensus Tree">
             <filter>selExtraOpts['extraOptions'] == "full"</filter>
             <filter>selExtraOpts['majority_rule_consensus'] == 'MRE'</filter>
         </data>
-        <data format="txt" name="bipartitionFreq" from_work_dir="RAxML_bipartitionFrequences.galaxy" label="Pair-wise bipartition frequences.">
+        <data format="txt" name="bipartitionFreq" from_work_dir="RAxML_bipartitionFrequences.galaxy" label="${tool.name} on ${on_string}: Pair-wise bipartition frequences.">
             <filter>selExtraOpts['search_algorithm'] == 'm' </filter>
             <filter>selExtraOpts['extraOptions'] == "full"</filter>
         </data>
-        <data format="txt" name="perSiteLLs" from_work_dir="RAxML_perSiteLLs.galaxy" label="Per-site likelihood schores">
+        <data format="txt" name="perSiteLLs" from_work_dir="RAxML_perSiteLLs.galaxy" label="${tool.name} on ${on_string}: Per-site likelihood schores">
             <filter>selExtraOpts['search_algorithm'] == 'g' </filter>
             <filter>selExtraOpts['extraOptions'] == "full"</filter>
         </data>
-        <data format="txt" name="distances" from_work_dir="RAxML_distances.galaxy" label="Pair-wise distances">
+        <data format="txt" name="distances" from_work_dir="RAxML_distances.galaxy" label="${tool.name} on ${on_string}: Pair-wise distances">
             <filter>selExtraOpts['search_algorithm'] == 'x' </filter>
             <filter>selExtraOpts['extraOptions'] == "full"</filter>
         </data>
     </outputs>
     <tests>
-        <test>
+        <test expect_num_outputs="5">
             <param name="extraOptions" value="required"/>
             <param name="infile" value="dna.phy"/>
             <param name="model_type" value="nucleotide"/>
             <param name="base_model" value="GTRCAT"/>
-            <output name="parsimonyTreeReq" file="RAxML_parsimonyTree.galaxy.basic" ftype="nhx" />
+            <output name="info">
+                <assert_contents><has_text text="Overall execution time"/></assert_contents>
+            </output>
+            <output name="log">
+                <assert_contents>
+                    <has_n_columns n="2" sep=" "/>
+                    <has_n_lines n="9"/>
+                </assert_contents>
+            </output>
+            <output name="parsimonyTree" file="RAxML_parsimonyTree.galaxy.basic" ftype="nhx" />
+            <output name="result" ftype="nhx">
+                <assert_contents><has_text text="Frog"/></assert_contents>
+            </output>
             <output name="bestTree" ftype="nhx">
                 <assert_contents>
                     <has_text_matching expression="Frog" />
                 </assert_contents>
             </output>
         </test>
-        <test>
+        <test expect_num_outputs="5">
             <param name="extraOptions" value="full"/>
             <param name="infile" value="dna.fasta"/>
             <param name="model_type" value="nucleotide"/>
             <param name="base_model" value="GTRCAT"/>
             <param name="number_of_runs" value="5"/>
-            <output name="parsimonyTree" ftype="nhx">
+            <output name="info">
+                <assert_contents><has_text text="Overall execution time"/></assert_contents>
+            </output>
+            <output name="log">
                 <assert_contents>
-                    <has_text_matching expression="Chicken" />
+                    <has_n_columns n="2" sep=" "/>
+                    <has_n_lines n="41"/>
                 </assert_contents>
             </output>
-            <output name="parsimonyTreeReq" file="RAxML_parsimonyTree.galaxy.multi" ftype="nhx" compare="re_match"/>
+            <output name="result">
+                <assert_contents>
+                    <has_text_matching expression="Chicken" />
+                    <has_n_lines n="5"/>
+                </assert_contents>
+            </output>
+            <output name="parsimonyTree" ftype="nhx">
+                <assert_contents>
+                    <has_text text="(Whale,((((Mouse,Chicken),Human),Rat),((Frog,(Carp,Loach)),Seal)),Cow);"/>
+                    <has_n_lines n="5"/>
+                </assert_contents>
+            </output>
             <output name="bestTree" ftype="nhx">
                 <assert_contents>
-                    <has_text_matching expression="Whale" />
+                    <has_text text="Whale" />
+                    <has_text text="Chicken"/>
                 </assert_contents>
             </output>
         </test>
--- a/test-data/RAxML_parsimonyTree.galaxy.multi	Sat Nov 05 17:42:11 2022 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-\(\(Whale:0.0000[0-9]*,\(\(\(Human:0.5359[0-9]*,Seal:0.0253[0-9]*\):0.2219[0-9]*,Frog:0.1028[0-9]*\):0.2186[0-9]*,\(Chicken:0.2075[0-9]*,\(Mouse:0.0833[0-9]*,Rat:0.0803[0-9]*\):0.0752[0-9]*\):0.1271[0-9]*\):0.0333[0-9]*\):0.1439[0-9]*,\(Carp:0.3512[0-9]*,Loach:0.0000[0-9]*\):0.2173[0-9]*,Cow:0.0625[0-9]*\):0.0;