diff pal_finder_wrapper.xml @ 12:d26fb5260c67 draft

0.02.04.6: update to use conda to resolve dependencies.
author pjbriggs
date Thu, 15 Mar 2018 09:49:05 -0400
parents 84613d5f1713
children 3f8bf1a0403b
line wrap: on
line diff
--- a/pal_finder_wrapper.xml	Mon Jul 24 11:04:27 2017 -0400
+++ b/pal_finder_wrapper.xml	Thu Mar 15 09:49:05 2018 -0400
@@ -1,13 +1,18 @@
 <tool id="microsat_pal_finder" name="pal_finder" version="0.02.04.6">
   <description>Find microsatellite repeat elements from sequencing reads and design PCR primers to amplify them</description>
+  <macros>
+    <import>pal_finder_macros.xml</import>
+  </macros>
   <requirements>
-    <requirement type="package" version="5.16.3">perl</requirement>
     <requirement type="package" version="0.02.04">pal_finder</requirement>
-    <requirement type="package" version="2.0.0">primer3_core</requirement>
+    <requirement type="package" version="2.7">python</requirement>
     <requirement type="package" version="1.65">biopython</requirement>
     <requirement type="package" version="2.8.1">pandaseq</requirement>
   </requirements>
-  <command interpreter="bash">pal_finder_wrapper.sh
+  <command><![CDATA[
+  @CONDA_PAL_FINDER_SCRIPT_DIR@ &&
+  @CONDA_PAL_FINDER_DATA_DIR@ &&
+  bash $__tool_directory__/pal_finder_wrapper.sh
   #if str( $platform.platform_type ) == "illumina"
     #set $paired_input_type = $platform.paired_input_type_conditional.paired_input_type
     #if $paired_input_type == "pair_of_files"
@@ -57,7 +62,7 @@
       $platform.assembly "$output_assembly"
     #end if
   #end if
-  </command>
+  ]]></command>
   <inputs>
     <param name="primer_prefix" type="text" value="test" size="25" label="Primer prefix" help="This prefix will be added to the beginning of all primer names" />
     <conditional name="platform">
@@ -169,18 +174,18 @@
     </data>
   </outputs>
   <tests>
+    <!-- Test with Illumina input -->
     <test>
-      <!-- Test with Illumina input -->
       <param name="platform_type" value="illumina" />
       <param name="input_fastq_r1" value="illuminaPE_r1.fq" ftype="fastqsanger" />
       <param name="input_fastq_r2" value="illuminaPE_r2.fq" ftype="fastqsanger" />
-      <output name="output_microsat_summary" file="illuminaPE_microsat_types.out" />
-      <output name="output_pal_summary" file="illuminaPE_microsats.out" />
-      <output name="output_filtered_microsats" file="illuminaPE_filtered_microsats.out" />
+      <expand macro="output_illumina_microsat_summary" />
+      <output name="output_pal_summary" compare="re_match" file="illuminaPE_microsats.out.re_match" />
+      <output name="output_filtered_microsats" compare="re_match" file="illuminaPE_filtered_microsats.out.re_match" />
       <output name="output_assembly" file="illuminaPE_assembly_after_filters.out" />
     </test>
+    <!-- Test with Illumina input as dataset pair -->
     <test>
-      <!-- Test with Illumina input as dataset pair -->
       <param name="platform_type" value="illumina" />
       <param name="paired_input_type" value="collection" />
       <param name="input_fastq_pair">
@@ -189,64 +194,65 @@
 	  <element name="reverse" value="illuminaPE_r2.fq" ftype="fastqsanger" />
 	</collection>
       </param>
-      <output name="output_microsat_summary" file="illuminaPE_microsat_types.out" />
-      <output name="output_pal_summary" file="illuminaPE_microsats.out" />
-      <output name="output_filtered_microsats" file="illuminaPE_filtered_microsats.out" />
+      <expand macro="output_illumina_microsat_summary" />
+      <output name="output_pal_summary" compare="re_match" file="illuminaPE_microsats.out.re_match" />
+      <output name="output_filtered_microsats" compare="re_match" file="illuminaPE_filtered_microsats.out.re_match" />
       <output name="output_assembly" file="illuminaPE_assembly_after_filters.out" />
     </test>
+    <!-- Test with Illumina input filter to loci with PandaSEQ assembly
+	 ('-assembly' option)
+    -->
     <test>
-      <!-- Test with Illumina input filter to loci with PandaSEQ assembly
-	   ('-assembly' option) -->
       <param name="platform_type" value="illumina" />
       <param name="filters" value="" />
       <param name="input_fastq_r1" value="illuminaPE_r1.fq" ftype="fastqsanger" />
       <param name="input_fastq_r2" value="illuminaPE_r2.fq" ftype="fastqsanger" />
-      <output name="output_microsat_summary" file="illuminaPE_microsat_types.out" />
-      <output name="output_pal_summary" file="illuminaPE_microsats.out" />
+      <expand macro="output_illumina_microsat_summary" />
+      <output name="output_pal_summary" compare="re_match" file="illuminaPE_microsats.out.re_match" />
       <output name="output_assembly" file="illuminaPE_assembly.out" />
     </test>
+    <!-- Test with Illumina input filter to loci with primers
+	 ('-primers' option) -->
     <test>
-      <!-- Test with Illumina input filter to loci with primers
-	   ('-primers' option) -->
       <param name="platform_type" value="illumina" />
       <param name="filters" value="-primers" />
       <param name="assembly" value="false" />
       <param name="input_fastq_r1" value="illuminaPE_r1.fq" ftype="fastqsanger" />
       <param name="input_fastq_r2" value="illuminaPE_r2.fq" ftype="fastqsanger" />
-      <output name="output_microsat_summary" file="illuminaPE_microsat_types.out" />
-      <output name="output_pal_summary" file="illuminaPE_microsats.out" />
-      <output name="output_filtered_microsats" file="illuminaPE_filtered_microsats_primers.out" />
+      <expand macro="output_illumina_microsat_summary" />
+      <output name="output_pal_summary" compare="re_match" file="illuminaPE_microsats.out.re_match" />
+      <output name="output_filtered_microsats" compare="re_match" file="illuminaPE_filtered_microsats_primers.out.re_match" />
     </test>
+    <!-- Test with Illumina input filter to loci which appear only once
+	 ('-occurrences' option) -->
     <test>
-      <!-- Test with Illumina input filter to loci which appear only once
-	   ('-occurrences' option) -->
       <param name="platform_type" value="illumina" />
       <param name="filters" value="-occurrences" />
       <param name="assembly" value="false" />
       <param name="input_fastq_r1" value="illuminaPE_r1.fq" ftype="fastqsanger" />
       <param name="input_fastq_r2" value="illuminaPE_r2.fq" ftype="fastqsanger" />
-      <output name="output_microsat_summary" file="illuminaPE_microsat_types.out" />
-      <output name="output_pal_summary" file="illuminaPE_microsats.out" />
-      <output name="output_filtered_microsats" file="illuminaPE_filtered_microsats_occurrences.out" />
+      <expand macro="output_illumina_microsat_summary" />
+      <output name="output_pal_summary" compare="re_match" file="illuminaPE_microsats.out.re_match" />
+      <output name="output_filtered_microsats" compare="re_match" file="illuminaPE_filtered_microsats_occurrences.out.re_match" />
     </test>
+    <!-- Test with Illumina input filter and rank loci with perfect motifs
+	 ('-rankmotifs' option) -->
     <test>
-      <!-- Test with Illumina input filter and rank loci with perfect motifs
-	   ('-rankmotifs' option) -->
       <param name="platform_type" value="illumina" />
       <param name="filters" value="-rankmotifs" />
       <param name="assembly" value="false" />
       <param name="input_fastq_r1" value="illuminaPE_r1.fq" ftype="fastqsanger" />
       <param name="input_fastq_r2" value="illuminaPE_r2.fq" ftype="fastqsanger" />
-      <output name="output_microsat_summary" file="illuminaPE_microsat_types.out" />
-      <output name="output_pal_summary" file="illuminaPE_microsats.out" />
-      <output name="output_filtered_microsats" file="illuminaPE_filtered_microsats_rankmotifs.out" />
+      <expand macro="output_illumina_microsat_summary" />
+      <output name="output_pal_summary" compare="re_match" file="illuminaPE_microsats.out.re_match" />
+      <output name="output_filtered_microsats" compare="re_match" file="illuminaPE_filtered_microsats_rankmotifs.out.re_match" />
     </test>
+    <!-- Test with 454 input -->
     <test>
-      <!-- Test with 454 input -->
       <param name="platform_type" value="454" />
       <param name="input_fasta" value="454_in.fa" ftype="fasta" />
-      <output name="output_microsat_summary" file="454_microsat_types.out" />
-      <output name="output_pal_summary" file="454_microsats.out" />
+      <expand macro="output_454_microsat_summary" />
+      <output name="output_pal_summary" compare="re_match" file="454_microsats.out.re_match" />
     </test>
   </tests>
   <help>
@@ -274,29 +280,6 @@
 
 -------------
 
-.. class:: warning
-
-**Known problems**
-
-.. class:: infomark
-
-**Bad primer product size ranges**
-
-For some datasets pal_finder may generate 'bad' product size ranges (where the
-lower limit exceeds the upper limit) for one or more reads, for input into
-primer3_core.
-
-If this occurs then the tool will terminate with an error. A list of the reads
-for which the bad ranges were generated can be found in the error message
-which can be accessed via the 'bug' icon from a failed dataset.
-
-The conditions which cause this error are unclear. However we believe it to be
-associated with short or low quality reads. It is recommended that the input
-data are sufficiently trimmed and filtered (using e.g. the Trimmomatic tool)
-before rerunning pal_finder.
-
--------------
-
 .. class:: infomark
 
 **Credits**