diff multiqc.xml @ 22:9a913cdee30e draft

"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/multiqc commit 57b36cfbdd1663aef43d03b76e37364cc5bdeef3"
author iuc
date Wed, 03 Nov 2021 15:17:39 +0000
parents 75c93c70d094
children abfd8a6544d7
line wrap: on
line diff
--- a/multiqc.xml	Tue Mar 02 21:08:49 2021 +0000
+++ b/multiqc.xml	Wed Nov 03 15:17:39 2021 +0000
@@ -1,72 +1,11 @@
-<tool id="multiqc" name="MultiQC" version="@WRAPPER_VERSION@+galaxy1">
+<tool id="multiqc" name="MultiQC" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="20.01">
     <description>aggregate results from bioinformatics analyses into a single report</description>
+
     <macros>
-        <token name="@WRAPPER_VERSION@">1.9</token>
-        <token name="@ESCAPE_IDENTIFIER@">
-<![CDATA[
-#set identifier = re.sub('[^\s\w\-]', '_', str($file.element_identifier))
-        ]]></token>
-        <token name="@CHECK_LN_FILE@">
-<![CDATA[
-#if $file_path in $file_paths
-    #set $file_path += '_' + str($file_paths.count($file_path))
-#end if
-#set $file_paths += [$file_path]
-grep -q '$pattern' $file || die "Module '${repeat.software_cond.software}: '$pattern' not found in the file '$identifier'" &&
-ln -s '$file' '$file_path'  &&
-        ]]></token>
-        <token name="@CREATE_REPEAT_DIR_1@">
-<![CDATA[
-#set repeat_dir = os.path.join($software_dir, str($repeat2.type) + '_' + str($j))
-mkdir '$repeat_dir' &&
-        ]]></token>
-        <token name="@CREATE_REPEAT_DIR_2@">
-<![CDATA[
-#set repeat_dir = os.path.join($software_dir, str($repeat2.type.type) + '_' + str($j))
-mkdir '$repeat_dir' &&
-        ]]></token>
-        <token name="@LN_FILES@">
-<![CDATA[
-#set file_paths = []
-#for $file in $repeat.software_cond.input
-    @ESCAPE_IDENTIFIER@
-    #set file_path = os.path.join($software_dir, str($identifier))
-    @CHECK_LN_FILE@
-#end for
-        ]]></token>
-        <token name="@LN_2_FILES@">
-<![CDATA[
-#set file_paths = []
-@CREATE_REPEAT_DIR_1@
-#for $file in $repeat2.input
-    #set identifier = re.sub('[^\s\w\-]', '_', str($file.element_identifier))
-    #set file_path = os.path.join($repeat_dir, str($identifier))
-    @CHECK_LN_FILE@
-#end for
-        ]]></token>
-        <token name="@LN_3_FILES@">
-<![CDATA[
-#set file_paths = []
-#for $file in $repeat2.type.input
-    #set identifier = re.sub('[^\s\w\-]', '_', str($file.element_identifier))
-    #set file_path = os.path.join($repeat_dir, str($identifier))
-    @CHECK_LN_FILE@
-#end for
-        ]]></token>
-        <xml name="element_assert" token_name="" token_lines="" token_columns="" token_text="">
-            <element name="@NAME@">
-                <assert_contents>
-                    <has_n_columns n="@COLUMNS@"/>
-                    <has_n_lines n="@LINES@"/>
-                    <has_text text="@TEXT@"/>
-                    <yield/>
-                </assert_contents>
-            </element>
-        </xml>
+        <import>macros.xml</import>
     </macros>
-    <requirements>
-       <requirement type="package" version="@WRAPPER_VERSION@">multiqc</requirement>
-    </requirements>
+    <expand macro="bio_tools"/>
+    <expand macro='requirements' />
     <version_command>multiqc --version</version_command>
     <command detect_errors="aggressive">
 <![CDATA[
@@ -82,7 +21,6 @@
 #for $i, $repeat in enumerate( $results )
     #set software_dir = os.path.join('multiqc_WDir', str($repeat.software_cond.software) + '_' + str($i))
     mkdir $software_dir &&
-
     #if str($repeat.software_cond.software) == "bamtools"
         #set $pattern = "Stats for BAM file(s)"
         @LN_FILES@
@@ -90,40 +28,7 @@
         #set $pattern = "This file was produced by bcftools stats"
         @LN_FILES@
     #elif str($repeat.software_cond.software) == "bismark"
-        #for $j, $repeat2 in enumerate( $repeat.software_cond.output )
-            @CREATE_REPEAT_DIR_1@
-            #if str($repeat2.type) == "align"
-                #for $file in $repeat2.input
-                    @ESCAPE_IDENTIFIER@
-                    #set file_path = os.path.join($repeat_dir, str($identifier) + '_SE_report.txt')
-                    ln -s '$file' '$file_path' &&
-                #end for
-            #elif str($repeat2.type) == "dedup"
-                #for $file in $repeat2.input
-                    @ESCAPE_IDENTIFIER@
-                    #set file_path = os.path.join($repeat_dir, str($identifier) + '_deduplication_report.txt')
-                    ln -s '$file' '$file_path' &&
-                #end for
-            #elif str($repeat2.type) == "meth_extract"
-                #for $file in $repeat2.input
-                    @ESCAPE_IDENTIFIER@
-                    #set file_path = os.path.join($repeat_dir, str($identifier) + '_splitting_report.txt')
-                    ln -s '$file' '$file_path' &&
-                #end for
-            #elif str($repeat2.type) == "m_bias"
-                #for $file in $repeat2.input
-                    @ESCAPE_IDENTIFIER@
-                    #set file_path = os.path.join($repeat_dir, str($identifier) + '_M-bias.txt')
-                    ln -s '$file' '$file_path' &&
-                #end for
-            #elif str($repeat2.type) == "bam2nuc"
-                #for $file in $repeat2.input
-                    @ESCAPE_IDENTIFIER@
-                    #set file_path = os.path.join($repeat_dir, str($identifier) + '.nucleotide_stats.txt')
-                    ln -s '$file' '$file_path' &&
-                #end for
-            #end if
-        #end for
+        @BISMARK_INPUT@
     #elif str($repeat.software_cond.software) == "bowtie2"
         #set $pattern = "% overall alignment rate"
         @LN_FILES@
@@ -145,27 +50,7 @@
             grep -q "$pattern" '$file_path' || die "'$pattern' or 'You are running cutadapt' not found in the file" &&
         #end for
     #elif str($repeat.software_cond.software) == "deeptools"
-        #for $j, $repeat2 in enumerate( $repeat.software_cond.output )
-            #if str($repeat2.type) == "bamPEFragmentSize"
-                #set $pattern = "Frag."
-                @LN_2_FILES@
-            #elif str($repeat2.type) == "estimateReadFiltering"
-                #set $pattern = "Internally-determined Duplicate"
-                @LN_2_FILES@
-            #elif str($repeat2.type) == "plotCoverageStdout"
-                #set $pattern = "sample"
-                @LN_2_FILES@
-            #elif str($repeat2.type) == "plotCoverageOutRawCounts"
-                #set $pattern = "#plotCoverage --outRawCounts"
-                @LN_2_FILES@
-            #elif str($repeat2.type) == "plotEnrichment"
-                #set $pattern = "featureReadCount"
-                @LN_2_FILES@
-            #elif str($repeat2.type) == "plotFingerprintOutRawCounts"
-                #set $pattern = "#plotFingerprint --outRawCounts"
-                @LN_2_FILES@
-            #end if
-        #end for
+      @DEEPTOOLS_INPUT@
     #elif str($repeat.software_cond.software) == "fastp"
         #set $pattern = "report_title"
         #for $file in $repeat.software_cond.input
@@ -175,23 +60,7 @@
             grep -q "$pattern" '$file_path' || die "'$pattern' or 'report_title' not found in the file" &&
         #end for
     #elif str($repeat.software_cond.software) == "fastqc"
-        #for $j, $repeat2 in enumerate( $repeat.software_cond.output )
-            @CREATE_REPEAT_DIR_1@
-            #if str($repeat2.type) == "data"
-                #for $k, $file in enumerate($repeat2.input)
-                    #set file_dir = os.path.join($repeat_dir, 'file_' + str($k))
-                    #set file_path = os.path.join($file_dir, 'fastqc_data.txt')
-                    mkdir '$file_dir' &&
-                    ln -s '$file' '$file_path' &&
-                #end for
-            #elif str($repeat2.type) == "theoretical_gc"
-                #for $file in $repeat2.input
-                    @ESCAPE_IDENTIFIER@
-                    #set file_path = os.path.join($repeat_dir, str($identifier) + '_fastqc_theoretical_gc')
-                    ln -s '$file' '$file_path' &&
-                #end for
-            #end if
-        #end for
+        @FASTQC_INPUT@
     #elif str($repeat.software_cond.software) == "featureCounts"
         #for $file in $repeat.software_cond.input
             @ESCAPE_IDENTIFIER@
@@ -243,42 +112,7 @@
             ln -s '$file' '$file_path' &&
         #end for
     #elif str($repeat.software_cond.software) == "picard"
-        #for $j, $repeat2 in enumerate( $repeat.software_cond.output )
-            #if str($repeat2.type) == "alignment_metrics"
-                #set $pattern = "picard.analysis.AlignmentSummaryMetrics"
-                @LN_2_FILES@
-            #elif str($repeat2.type) == "basedistributionbycycle"
-                #set $pattern = "picard.analysis.BaseDistributionByCycleMetrics"
-                @LN_2_FILES@
-            #elif str($repeat2.type) == "gcbias"
-                #set $pattern = "picard.analysis.GcBias"
-                @LN_2_FILES@
-            #elif str($repeat2.type) == "hsmetrics"
-                #set $pattern = "picard.analysis.directed.HsMetrics"
-                @LN_2_FILES@
-            #elif str($repeat2.type) == "insertsize"
-                #set $pattern = "picard.analysis.InsertSizeMetrics"
-                @LN_2_FILES@
-            #elif str($repeat2.type) == "markdups"
-                #set $pattern = "MarkDuplicates"
-                @LN_2_FILES@
-            #elif str($repeat2.type) == "oxogmetrics"
-                #set $pattern = "picard.analysis.CollectOxoGMetrics"
-                @LN_2_FILES@
-            #elif str($repeat2.type) == "pcr_metrics"
-                #set $pattern = "picard.analysis.directed.TargetedPcrMetrics"
-                @LN_2_FILES@
-            #elif str($repeat2.type) == "rnaseqmetrics"
-                #set $pattern = "Collect"
-                @LN_2_FILES@
-            #elif str($repeat2.type) == "rrbs_metrics"
-                #set $pattern = "picard.analysis.RrbsSummaryMetrics"
-                @LN_2_FILES@
-            #elif str($repeat2.type) == "wgs_metrics"
-                #set $pattern = "picard.analysis.CollectWgsMetrics$WgsMetrics"
-                @LN_2_FILES@
-            #end if
-        #end for
+        @PICCARD_INPUT@
     #elif str($repeat.software_cond.software) == "prokka"
         #set $pattern = "contigs:"
         @LN_FILES@
@@ -286,27 +120,7 @@
         #set $pattern = "\"pycoqc\":"
         @LN_FILES@
     #elif str($repeat.software_cond.software) == "qualimap"
-        #for $file in $repeat.software_cond.input
-            #if re.search("genome_results", str($file.element_identifier))
-                sample="\$(grep 'bam file = ' $file | sed 's/bam file = //g' | sed 's: ::g')" &&
-                dir_name="$software_dir/\${sample}" &&
-                mkdir -p \${dir_name} &&
-                filepath_1="\${dir_name}/genome_results.txt" &&
-                ln -sf '$file' \${filepath_1} &&
-            #elif re.search("coverage_histogram", str($file.element_identifier))
-                nested_dir_name="\${dir_name}/raw_data_qualimapReport/" &&
-                mkdir -p \${nested_dir_name} &&
-                filepath_2="\${nested_dir_name}/coverage_histogram.txt" &&
-                ln -sf '$file' \${filepath_2} &&
-            #elif re.search("gc-content_distribution", str($file.element_identifier))
-                nested_dir_name="\${dir_name}/raw_data_qualimapReport/" &&
-                mkdir -p \${nested_dir_name} &&
-                filepath_3="\${nested_dir_name}/mapped_reads_gc-content_distribution.txt" &&
-                ln -sf '$file' \${filepath_3} &&
-            #else
-                #pass
-            #end if
-        #end for
+        @QUALIMAP_INPUT@
     #elif str($repeat.software_cond.software) == "quast"
         #for $k, $file in enumerate($repeat.software_cond.input)
             #set file_dir = os.path.join($software_dir, 'file_' + str($k))
@@ -321,92 +135,14 @@
             ln -s '$file' '$file_path' &&
         #end for
     #elif str($repeat.software_cond.software) == "rseqc"
-        #for $j, $repeat2 in enumerate( $repeat.software_cond.output )
-            @CREATE_REPEAT_DIR_2@
-            #if str($repeat2.type.type) == "bam_stat"
-                #set $pattern = "Proper-paired reads map to different chrom:"
-                @LN_3_FILES@
-            #elif str($repeat2.type.type) == "gene_body_coverage"
-                #for $k, $file in enumerate($repeat2.type.input)
-                    #set file_path = os.path.join($repeat_dir, 'file_' + str($k) + '.geneBodyCoverage.txt')
-                    ln -s '$file' '$file_path' &&
-                #end for
-            #elif str($repeat2.type.type) == "inner_distance"
-                #for $k, $file in enumerate($repeat2.type.input)
-                    #set file_path = os.path.join($repeat_dir, 'file_' + str($k) + '.inner_distance_freq.txt')
-                    ln -s '${file}' '$file_path' &&
-                #end for
-            #elif str($repeat2.type.type) == "junction_annotation"
-                #set $pattern = "Partial Novel Splicing Junctions:"
-                @LN_3_FILES@
-            #elif str($repeat2.type.type) == "read_gc"
-                #for $k, $file in enumerate($repeat2.type.input)
-                    #set file_path = os.path.join($repeat_dir, 'file_' + str($k) + '.GC.xls')
-                    ln -s '$file' '$file_path' &&
-                #end for
-            #elif str($repeat2.type.type) == "junction_annotation"
-                #set $pattern = "Group               Total_bases         Tag_count           Tags/Kb"
-                @LN_3_FILES@
-            #elif str($repeat2.type.type) == "read_distribution"
-                #set $pattern = "Group               Total_bases         Tag_count           Tags/Kb"
-                @LN_3_FILES@
-            #elif str($repeat2.type.type) == "read_duplication_pos"
-                #for $k, $file in enumerate($repeat2.type.input)
-                    #set file_path = os.path.join($repeat_dir, 'file_' + str($k) + '.pos.DupRate.xls')
-                    ln -s '$file' '$file_path' &&
-                #end for
-            #elif str($repeat2.type.type) == "infer_experiment"
-                #set $pattern = "Fraction of reads explained by"
-                #for $file in $repeat2.type.input
-                    @ESCAPE_IDENTIFIER@
-                    #set file_path = os.path.join($repeat_dir, str($identifier))
-                    grep -q "$pattern" $file || die "'$pattern' not found in the file" &&
-                    ln -s '$file' '$file_path' &&
-                #end for
-            #end if
-        #end for
+        @RSEQ_INPUT@
     #elif str($repeat.software_cond.software) == "salmon"
-        #for $j, $repeat2 in enumerate( $repeat.software_cond.output )
-            @CREATE_REPEAT_DIR_2@
-            #if str($repeat2.type.type) == "meta"
-                #for $k, $file in enumerate($repeat2.type.input)
-                    #set file_dir = os.path.join($repeat_dir, 'file_' + str($k))
-                    #set file_path = os.path.join($file_dir, 'meta_info.json')
-                    mkdir '$file_dir' &&
-                    ln -s '$file' '$file_path' &&
-                #end for
-            #elif str($repeat2.type.type) == "fld"
-                #for $k, $file in enumerate($repeat2.type.input)
-                    #set file_dir = os.path.join($repeat_dir, 'file_' + str($k))
-                    #set file_path = os.path.join($file_dir,'flenDist.txt')
-                    mkdir '$file_dir' &&
-                    ln -s '$file' '$file_path' &&
-                #end for
-            #end if
-        #end for
+        @SALMON_INPUT@
     #elif str($repeat.software_cond.software) == "samblaster"
         #set $pattern = "samblaster: Version"
         @LN_FILES@
     #elif str($repeat.software_cond.software) == "samtools"
-        #for $j, $repeat2 in enumerate( $repeat.software_cond.output )
-            @CREATE_REPEAT_DIR_2@
-            #if str($repeat2.type.type) == "stats"
-                #set $pattern = "This file was produced by samtools stats"
-                @LN_3_FILES@
-            #elif str($repeat2.type.type) == "flagstat"
-                #set $pattern = "in total (QC-passed reads + QC-failed reads)"
-                @LN_3_FILES@
-            #elif str($repeat2.type.type) == "idxstats"
-                #for $file in $repeat2.type.input
-                    @ESCAPE_IDENTIFIER@
-                    #set file_path = os.path.join($repeat_dir, str($identifier) + '_idxstat')
-                    ln -s '$file' '$file_path' &&
-                #end for
-            #elif str($repeat2.type.type) == "rmdup"
-                #set $pattern = "[bam_rmdup"
-                @LN_3_FILES@
-            #end if
-        #end for
+        @SAMTOOLS_INPUT@
     #elif str($repeat.software_cond.software) == "slamdunk"
         #set $pattern = "# slamdunk"
         @LN_FILES@
@@ -417,22 +153,7 @@
         #set $pattern = "Minimal SW score based on E-value"
         @LN_FILES@
     #else if str($repeat.software_cond.software) == "star":
-        #for $j, $repeat2 in enumerate( $repeat.software_cond.output )
-            @CREATE_REPEAT_DIR_2@
-            #if str($repeat2.type.type) == "log"
-                #for $file in $repeat2.type.input
-                    @ESCAPE_IDENTIFIER@
-                    #set file_path = os.path.join($repeat_dir, str($identifier) + '_Log.final.out')
-                    ln -s '$file' '$file_path' &&
-                #end for
-            #elif str($repeat2.type.type) == "genecounts"
-                #for $file in $repeat2.type.input
-                    @ESCAPE_IDENTIFIER@
-                    #set file_path = os.path.join($repeat_dir, str($identifier) + '_ReadsPerGene.out.tab')
-                    ln -s '$file' '$file_path' &&
-                #end for
-            #end if
-        #end for
+        @STAR_INPUT@
     #elif str($repeat.software_cond.software) == "tophat"
         #for $file in $repeat.software_cond.input
             @ESCAPE_IDENTIFIER@
@@ -443,34 +164,7 @@
         #set $pattern = "Trimmomatic"
         @LN_FILES@
     #elif str($repeat.software_cond.software) == "vcftools"
-        #for $j, $repeat2 in enumerate( $repeat.software_cond.output )
-            @CREATE_REPEAT_DIR_2@
-            #if str($repeat2.type.type) == "relatedness2"
-                #for $file in $repeat2.type.input
-                    @ESCAPE_IDENTIFIER@
-                    #set file_path = os.path.join($repeat_dir, str($identifier) + '.relatedness2')
-                    ln -s '$file' '$file_path' &&
-                #end for
-            #elif str($repeat2.type) == "tstv_by_count"
-                #for $file in $repeat2.type.input
-                    @ESCAPE_IDENTIFIER@
-                    #set file_path = os.path.join($repeat_dir, str($identifier) + '.TsTv.count')
-                    ln -s '$file' '$file_path' &&
-                #end for
-            #elif str($repeat2.type) == "tstv_by_qual"
-                #for $file in $repeat2.type.input
-                    @ESCAPE_IDENTIFIER@
-                    #set file_path = os.path.join($repeat_dir, str($identifier) + '.TsTv.qual')
-                    ln -s '$file' '$file_path' &&
-                #end for
-            #elif str($repeat2.type) == "tstv_summary"
-                #for $file in $repeat2.type.input
-                    @ESCAPE_IDENTIFIER@
-                    #set file_path = os.path.join($repeat_dir, str($identifier) + '.TsTv.summary')
-                    ln -s '$file' '$file_path' &&
-                #end for
-            #end if
-        #end for
+        @VCFTOOLS_INPUT@
     #else if str($repeat.software_cond.software) == "custom_content":
         #set $configfile = "T"
         #for $j, $file in enumerate( $repeat.software_cond.input )
@@ -482,13 +176,13 @@
 #end for
 
 multiqc multiqc_WDir
---filename "report"
+--filename 'report'
 
 #if str($title)
-    --title "$title"
+    --title '$title'
 #end if
 #if str($comment)
-    --comment "$comment"
+    --comment '$comment'
 #end if
 
 $flat
@@ -858,8 +552,32 @@
                 </when>
             </conditional>
         </repeat>
-        <param name="title" type="text" value="" optional="true" label="Report title" help="It is printed as page header"/>
-        <param name="comment" type="text" value="" optional="true" label="Custom comment" help="It will be printed at the top of the report"/>
+        <param name="title" type="text" value="" optional="true" label="Report title" help="It is printed as page header">
+            <sanitizer invalid_char="">
+                <valid initial="string.letters,string.digits">
+                    <add value="," />
+                    <add value=":" />
+                    <add value="-" />
+                    <add value="_" />
+                    <add value=" " />
+                    <add value="." />
+                </valid>
+            </sanitizer>
+            <validator type="regex">[0-9a-zA-Z,: _.-]+</validator>
+        </param>
+        <param name="comment" type="text" value="" optional="true" label="Custom comment" help="It will be printed at the top of the report">
+            <sanitizer invalid_char="">
+                <valid initial="string.letters,string.digits">
+                    <add value="," />
+                    <add value=":" />
+                    <add value="-" />
+                    <add value="_" />
+                    <add value=" " />
+                    <add value="." />
+                </valid>
+            </sanitizer>
+            <validator type="regex">[0-9a-zA-Z,: _.-]+</validator>
+        </param>
         <param argument="--flat" type="boolean" truevalue="--flat" falsevalue="" checked="false" label="Use only flat plots (non-interactive images)" help="To consume less disk space and resources to display. Used by default when there are 100 or more samples."/>
         <param argument="--export" type="boolean" truevalue="--export" falsevalue="" checked="false" label="Output the multiQC plots raw data?" help="This will output a file for each plot containing the raw data used to generate the plot"/>
         <param name="saveLog" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Output the multiQC log file?" help="This is mostly useful for debugging purposes"/>
@@ -878,6 +596,7 @@
         </collection>
     </outputs>
     <tests>
+        <!--Test 01-->
         <test expect_num_outputs="4">
             <repeat name="results">
                 <conditional name="software_cond">
@@ -948,7 +667,7 @@
                 </assert_contents>
             </output>
             <output_collection name="stats" type="list" count="10">
-                <expand macro="element_assert" name="cutadapt" columns="8" lines="2" text="dataset_33"/>
+                <expand macro="element_assert" name="cutadapt" columns="9" lines="2" text="dataset_33"/>
                 <expand macro="element_assert" name="fastp" columns="2" lines="3" text="R1_fq"/>
                 <expand macro="element_assert" name="fastqc" columns="22" lines="3" text="poulet5_1"/>
                 <expand macro="element_assert" name="flexbar" columns="11" lines="2" text="result_right"/>
@@ -961,6 +680,7 @@
             </output_collection>
             <output_collection name="plots" type="list" count="29"/>
         </test>
+        <!--Test 02-->
         <test expect_num_outputs="2">
             <repeat name="results">
                 <conditional name="software_cond">
@@ -1041,17 +761,18 @@
             <output_collection name="stats" type="list" count="11">
                 <expand macro="element_assert" name="bismark_alignment" columns="21" lines="2" text="bismark_txt_SE_report"/>
                 <expand macro="element_assert" name="bowtie2" columns="7" lines="3" text="bowtie2_1_txt"/>
-                <expand macro="element_assert" name="cutadapt" columns="8" lines="5" text="HS002-PE-R00059_BD0U5YACXX.RHM067_CAGATC_L002_R2"/>
-                <expand macro="element_assert" name="general_stats" columns="21" lines="19" text="treat2"/>
+                <expand macro="element_assert" name="cutadapt" columns="9" lines="5" text="HS002-PE-R00059_BD0U5YACXX.RHM067_CAGATC_L002_R2"/>
+                <expand macro="element_assert" name="general_stats" columns="22"  lines="19" text="treat2"/>
                 <expand macro="element_assert" name="hicexplorer" columns="41" lines="4" text="hicexplorer_3_hicexplorer2_log_small_test_rf"/>
                 <expand macro="element_assert" name="hisat2" columns="6" lines="3" text="hisat2_2_txt"/>
                 <expand macro="element_assert" name="kallisto" columns="6" lines="3" text="HS002-PE-R00059_BD0U5YACXX.RHM067_CAGATC_L002_R1_val_1"/>
-                <expand macro="element_assert" name="macs" columns="11" lines="3" text="treat2"/>
+                <expand macro="element_assert" name="macs" columns="12" lines="3" text="treat2"/>
                 <expand macro="element_assert" name="sources" columns="4" lines="18" text="Cutadapt"/>
                 <expand macro="element_assert" name="star" columns="27" lines="2" text="star_log_txt"/>
                 <expand macro="element_assert" name="tophat.txt" columns="9" lines="2" text="tophat_txtalign"/>
             </output_collection>
         </test>
+        <!--Test 03-->
         <test expect_num_outputs="2">
             <repeat name="results">
                 <conditional name="software_cond">
@@ -1215,7 +936,7 @@
             <repeat name="results">
                 <conditional name="software_cond">
                     <param name="software" value="snpeff" />
-                    <param name="input" value="snpeff.csv" />
+                    <param name="input" value="snpeff.csv" ftype="csv" />
                 </conditional>
             </repeat>
             <repeat name="results">
@@ -1239,7 +960,7 @@
                     <has_text text="featureCounts_assignment_plot" />
                     <has_text text="gatk_varianteval_variant_plot" />
                     <has_text text="htseq_assignment_plot" />
-                    <has_text text="picard_aligned_reads" />
+                    <has_text text="picard_alignment_readlength" />
                     <has_text text="picard-rna-assignment" />
                     <has_text text="picard-markduplicates" />
                     <has_text text="picard-insertsize" />
@@ -1280,6 +1001,7 @@
                 <expand macro="element_assert" name="sources" columns="4" lines="33" text="Bamtools"/>
             </output_collection>
         </test>
+        <!--Test 04-->
         <test expect_num_outputs="2">
             <repeat name="results">
                 <conditional name="software_cond">
@@ -1287,16 +1009,20 @@
                     <param name="cc_select" value="manual" />
                     <param name="plot_type" value="linegraph" />
                     <param name="section_name" value="BPC" />
-                    <param name="title" value="Base peak chromatogram" />
                     <param name="description" value="Sum of intensity (Y) of the most intense peaks at each retention time(X)" />
                     <param name="xlab" value="Retention Time" />
                     <param name="ylab" value="Base Peak Intensity" />
                     <param name="input" value="cc_ko15.bpc.tab,cc_wt15.bpc.tab" />
                 </conditional>
             </repeat>
-            <output name="html_report" file="report_manual_custom_content.html" compare="sim_size"/>
-	    <output_collection name="stats" type="list" count="1"/>
+            <output name="html_report" ftype="html">
+                <assert_contents>
+                    <has_size value="1110578" delta="500" />
+                </assert_contents>
+            </output>
+	        <output_collection name="stats" type="list" count="1"/>
         </test>
+        <!--Test 05-->
         <test expect_num_outputs="3">
             <repeat name="results">
                 <conditional name="software_cond">
@@ -1327,6 +1053,7 @@
                 <element name="fastqc_per_base_sequence_quality_plot_1" file="mqc_fastqc_per_base_sequence_quality_plot_1.txt" compare="sim_size" delta="10"/>
             </output_collection>
         </test>
+        <!--Test 06-->
         <test expect_num_outputs="2">
             <repeat name="results">
                 <conditional name="software_cond">