comparison multiqc.xml @ 24:f7e2f1eb3a16 draft default tip

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/multiqc commit dffbb5d421a5a5773bcb7f05933b12c45461bb58
author iuc
date Mon, 02 Sep 2024 14:22:54 +0000
parents abfd8a6544d7
children
comparison
equal deleted inserted replaced
23:abfd8a6544d7 24:f7e2f1eb3a16
1 <tool id="multiqc" name="MultiQC" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="20.01"> 1 <tool id="multiqc" name="MultiQC" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="20.01">
2 <description>aggregate results from bioinformatics analyses into a single report</description> 2 <description>aggregate results from bioinformatics analyses into a single report</description>
3
4 <macros> 3 <macros>
5 <import>macros.xml</import> 4 <import>macros.xml</import>
5 <import>bamtools_plugin.xml</import>
6 <import>bcftools_plugin.xml</import>
7 <import>bismark_plugin.xml</import>
8 <import>bowtie2_plugin.xml</import>
9 <import>busco_plugin.xml</import>
10 <import>cutadapt_plugin.xml</import>
11 <import>deeptools_plugin.xml</import>
12 <import>fastqc_plugin.xml</import>
13 <import>fastp_plugin.xml</import>
14 <import>featurecounts_plugin.xml</import>
15 <import>flexbar_plugin.xml</import>
16 <import>gatk_plugin.xml</import>
17 <import>picard_plugin.xml</import>
18 <import>pycoqc_plugin.xml</import>
19 <import>qualimap_plugin.xml</import>
20 <import>rseqc_plugin.xml</import>
21 <import>salmon_plugin.xml</import>
22 <import>samtools_plugin.xml</import>
23 <import>star_plugin.xml</import>
24 <import>trimmomatic_plugin.xml</import>
25 <import>vcftools_plugin.xml</import>
6 </macros> 26 </macros>
7 <expand macro="bio_tools"/> 27 <expand macro="bio_tools"/>
8 <expand macro='requirements' /> 28 <expand macro="requirements"/>
9 <version_command>multiqc --version</version_command> 29 <version_command>multiqc --version</version_command>
10 <command detect_errors="aggressive"> 30 <command detect_errors="aggressive">
11 <![CDATA[ 31 <![CDATA[
12 #import re 32 #import re
13 #import os 33 #import os
20 40
21 #for $i, $repeat in enumerate( $results ) 41 #for $i, $repeat in enumerate( $results )
22 #set software_dir = os.path.join('multiqc_WDir', str($repeat.software_cond.software) + '_' + str($i)) 42 #set software_dir = os.path.join('multiqc_WDir', str($repeat.software_cond.software) + '_' + str($i))
23 mkdir $software_dir && 43 mkdir $software_dir &&
24 #if str($repeat.software_cond.software) == "bamtools" 44 #if str($repeat.software_cond.software) == "bamtools"
25 #set $pattern = "Stats for BAM file(s)" 45 @BAMTOOLS_COMMAND@
26 @LN_FILES@
27 #elif str($repeat.software_cond.software) == "bcftools" 46 #elif str($repeat.software_cond.software) == "bcftools"
28 #set $pattern = "This file was produced by bcftools stats" 47 @BCFTOOLS_COMMAND@
29 @LN_FILES@
30 #elif str($repeat.software_cond.software) == "bismark" 48 #elif str($repeat.software_cond.software) == "bismark"
31 @BISMARK_INPUT@ 49 @BISMARK_COMMAND@
32 #elif str($repeat.software_cond.software) == "bowtie2" 50 #elif str($repeat.software_cond.software) == "bowtie2"
33 #set $pattern = "% overall alignment rate" 51 @BOWTIE2_COMMAND@
34 @LN_FILES@
35 #elif str($repeat.software_cond.software) == "busco" 52 #elif str($repeat.software_cond.software) == "busco"
36 ## Searches for files "short_summary_[samplename].txt" 53 @BUSCO_COMMAND@
37 #for $file in $repeat.software_cond.input
38 @ESCAPE_IDENTIFIER@
39 #set file_path = os.path.join($software_dir, 'short_summary_' + str($identifier))
40 ln -s '$file' '$file_path' &&
41 #end for
42 #elif str($repeat.software_cond.software) == "cutadapt" 54 #elif str($repeat.software_cond.software) == "cutadapt"
43 #set $pattern = "This is cutadapt" 55 @CUTADAPT_COMMAND@
44 #for $file in $repeat.software_cond.input
45 @ESCAPE_IDENTIFIER@
46 #set file_path = os.path.join($software_dir, str($identifier) + '.txt')
47 ln -s '$file' '$file_path' &&
48 ## replace header for old cutadapt release
49 sed -i.old 's/You are running/This is/' '$file_path' &&
50 grep -q "$pattern" '$file_path' || die "'$pattern' or 'You are running cutadapt' not found in the file" &&
51 #end for
52 #elif str($repeat.software_cond.software) == "deeptools" 56 #elif str($repeat.software_cond.software) == "deeptools"
53 @DEEPTOOLS_INPUT@ 57 @DEEPTOOLS_COMMAND@
54 #elif str($repeat.software_cond.software) == "fastp" 58 #elif str($repeat.software_cond.software) == "fastp"
55 #set $pattern = "report_title" 59 @FASTP_COMMAND@
56 #for $file in $repeat.software_cond.input
57 @ESCAPE_IDENTIFIER@
58 #set file_path = os.path.join($software_dir, str($identifier) + 'fastp.json')
59 ln -s '$file' '$file_path' &&
60 grep -q "$pattern" '$file_path' || die "'$pattern' or 'report_title' not found in the file" &&
61 #end for
62 #elif str($repeat.software_cond.software) == "fastqc" 60 #elif str($repeat.software_cond.software) == "fastqc"
63 @FASTQC_INPUT@ 61 @FASTQC_COMMAND@
64 #elif str($repeat.software_cond.software) == "featureCounts" 62 #elif str($repeat.software_cond.software) == "featureCounts"
65 #for $file in $repeat.software_cond.input 63 @FEATURECOUNTS_COMMAND@
66 @ESCAPE_IDENTIFIER@
67 #set file_prefix = os.path.join($software_dir, str($identifier))
68 if grep -qw Status '$file'; then
69 ln -s '$file' '${file_prefix}.summary';
70 else
71 echo -e 'Status\t${identifier}' > '${file_prefix}.summary';
72 cat '$file' >> '${file_prefix}.summary';
73 fi &&
74 #end for
75 #elif str($repeat.software_cond.software) == "flexbar" 64 #elif str($repeat.software_cond.software) == "flexbar"
76 #set $pattern = "flexible barcode and adapter removal" 65 @FLEXBAR_COMMAND@
77 @LN_FILES@
78 #elif str($repeat.software_cond.software) == "gatk" 66 #elif str($repeat.software_cond.software) == "gatk"
79 #for $j, $repeat2 in enumerate( $repeat.software_cond.output ) 67 @GATK_COMMAND@
80 #if str($repeat2.type) == "varianteval"
81 #set $pattern = "#:GATKTable:TiTvVariantEvaluator"
82 @LN_2_FILES@
83 #elif str($repeat2.type) == "base_recalibrator"
84 #set $pattern = "#:GATKTable:Arguments:Recalibration"
85 @LN_2_FILES@
86 #end if
87 #end for
88 #elif str($repeat.software_cond.software) == "hicup" 68 #elif str($repeat.software_cond.software) == "hicup"
89 #for $file in $repeat.software_cond.input 69 #for $file in $repeat.software_cond.input
90 @ESCAPE_IDENTIFIER@ 70 @ESCAPE_IDENTIFIER@
91 #set file_path = os.path.join($software_dir, 'HiCUP_summary_report_' + str($identifier)) 71 #set file_path = os.path.join($software_dir, 'HiCUP_summary_report_' + str($identifier))
92 ln -s '${file}' '$file_path' && 72 ln -s '${file}' '$file_path' &&
110 #set file_path = os.path.join($software_dir, str($identifier) + '_peaks.xls') 90 #set file_path = os.path.join($software_dir, str($identifier) + '_peaks.xls')
111 grep -q "$pattern" $file || die "'$pattern' not found in the file" && 91 grep -q "$pattern" $file || die "'$pattern' not found in the file" &&
112 ln -s '$file' '$file_path' && 92 ln -s '$file' '$file_path' &&
113 #end for 93 #end for
114 #elif str($repeat.software_cond.software) == "picard" 94 #elif str($repeat.software_cond.software) == "picard"
115 @PICCARD_INPUT@ 95 @PICARD_COMMAND@
116 #elif str($repeat.software_cond.software) == "prokka" 96 #elif str($repeat.software_cond.software) == "prokka"
117 #set $pattern = "contigs:" 97 #set $pattern = "contigs:"
118 @LN_FILES@ 98 @LN_FILES@
119 #elif str($repeat.software_cond.software) == "pycoqc" 99 #elif str($repeat.software_cond.software) == "pycoqc"
120 #set $pattern = "\"pycoqc\":" 100 @PYCOQC_COMMAND@
121 @LN_FILES@
122 #elif str($repeat.software_cond.software) == "qualimap" 101 #elif str($repeat.software_cond.software) == "qualimap"
123 @QUALIMAP_INPUT@ 102 @QUALIMAP_COMMAND@
124 #elif str($repeat.software_cond.software) == "quast" 103 #elif str($repeat.software_cond.software) == "quast"
125 #for $k, $file in enumerate($repeat.software_cond.input) 104 #for $k, $file in enumerate($repeat.software_cond.input)
126 #set file_dir = os.path.join($software_dir, 'file_' + str($k)) 105 #set file_dir = os.path.join($software_dir, 'file_' + str($k))
127 #set file_path = os.path.join($file_dir, 'report.tsv') 106 #set file_path = os.path.join($file_dir, 'report.tsv')
128 mkdir '$file_dir' && 107 mkdir '$file_dir' &&
133 @ESCAPE_IDENTIFIER@ 112 @ESCAPE_IDENTIFIER@
134 #set file_path = os.path.join($software_dir, str($identifier) + '.cnt') 113 #set file_path = os.path.join($software_dir, str($identifier) + '.cnt')
135 ln -s '$file' '$file_path' && 114 ln -s '$file' '$file_path' &&
136 #end for 115 #end for
137 #elif str($repeat.software_cond.software) == "rseqc" 116 #elif str($repeat.software_cond.software) == "rseqc"
138 @RSEQ_INPUT@ 117 @RSEQC_COMMAND@
139 #elif str($repeat.software_cond.software) == "salmon" 118 #elif str($repeat.software_cond.software) == "salmon"
140 @SALMON_INPUT@ 119 @SALMON_COMMAND@
141 #elif str($repeat.software_cond.software) == "samblaster" 120 #elif str($repeat.software_cond.software) == "samblaster"
142 #set $pattern = "samblaster: Version" 121 #set $pattern = "samblaster: Version"
143 @LN_FILES@ 122 @LN_FILES@
144 #elif str($repeat.software_cond.software) == "samtools" 123 #elif str($repeat.software_cond.software) == "samtools"
145 @SAMTOOLS_INPUT@ 124 @SAMTOOLS_COMMAND@
146 #elif str($repeat.software_cond.software) == "slamdunk" 125 #elif str($repeat.software_cond.software) == "slamdunk"
147 #set $pattern = "# slamdunk" 126 #set $pattern = "# slamdunk"
148 @LN_FILES@ 127 @LN_FILES@
149 #elif str($repeat.software_cond.software) == "snpeff" 128 #elif str($repeat.software_cond.software) == "snpeff"
150 #set $pattern = "SnpEff_version" 129 #set $pattern = "SnpEff_version"
151 @LN_FILES@ 130 @LN_FILES@
152 #elif str($repeat.software_cond.software) == "sortmerna" 131 #elif str($repeat.software_cond.software) == "sortmerna"
153 #set $pattern = "Minimal SW score based on E-value" 132 #set $pattern = "Minimal SW score based on E-value"
154 @LN_FILES@ 133 @LN_FILES@
155 #else if str($repeat.software_cond.software) == "star": 134 #else if str($repeat.software_cond.software) == "star":
156 @STAR_INPUT@ 135 @STAR_COMMAND@
157 #elif str($repeat.software_cond.software) == "tophat" 136 #elif str($repeat.software_cond.software) == "tophat"
158 #for $file in $repeat.software_cond.input 137 #for $file in $repeat.software_cond.input
159 @ESCAPE_IDENTIFIER@ 138 @ESCAPE_IDENTIFIER@
160 #set file_path = os.path.join($software_dir, str($identifier) + 'align_summary.txt') 139 #set file_path = os.path.join($software_dir, str($identifier) + 'align_summary.txt')
161 ln -s '$file' '$file_path' && 140 ln -s '$file' '$file_path' &&
162 #end for 141 #end for
163 #elif str($repeat.software_cond.software) == "trimmomatic" 142 #elif str($repeat.software_cond.software) == "trimmomatic"
164 #set $pattern = "Trimmomatic" 143 @TRIMMOMATIC_COMMAND@
165 @LN_FILES@
166 #elif str($repeat.software_cond.software) == "vcftools" 144 #elif str($repeat.software_cond.software) == "vcftools"
167 @VCFTOOLS_INPUT@ 145 @VCFTOOLS_COMMAND@
168 #else if str($repeat.software_cond.software) == "custom_content": 146 #else if str($repeat.software_cond.software) == "custom_content":
169 #set $configfile = "T" 147 #set $configfile = "T"
170 #for $j, $file in enumerate( $repeat.software_cond.input ) 148 #for $j, $file in enumerate( $repeat.software_cond.input )
171 #set file_path = os.path.join($software_dir, 'file_' + str($i) + '_' + str($j)) 149 #set file_path = os.path.join($software_dir, 'file_' + str($i) + '_' + str($j))
172 ln -s '$file' '$file_path' && 150 ln -s '$file' '$file_path' &&
189 $export 167 $export
190 168
191 #if $configfile == "T" 169 #if $configfile == "T"
192 --config '$multiqc_config' 170 --config '$multiqc_config'
193 #end if 171 #end if
172
173 &&
174 mkdir -p ./plots &&
175 ls -l ./report_data/ &&
176 ##cat ./report_data/multiqc_busco.txt &&
177 cp ./report_data/*plot*.txt ./plots/ | true ## don't fail if no plot files are generated
178
194 ]]></command> 179 ]]></command>
195 <configfiles> 180 <expand macro="configfile"/>
196 <configfile name="multiqc_config">
197 <![CDATA[
198 custom_data:
199 #for $i, $repeat in enumerate( $results )
200 #if str($repeat.software_cond.software) == "custom_content"
201 section_$i:
202 file_format: 'tsv'
203 section_name: '$repeat.software_cond.section_name'
204 title: '$repeat.software_cond.title'
205 description: '$repeat.software_cond.description'
206 plot_type: '$repeat.software_cond.plot_type'
207 pconfig:
208 id: 'section_${i}_${repeat.software_cond.plot_type}'
209 ylab: '$repeat.software_cond.ylab'
210 xlab: '$repeat.software_cond.xlab'
211 #end if
212 #end for
213 sp:
214 #for $i, $repeat in enumerate( $results )
215 #if str($repeat.software_cond.software) == "custom_content"
216 section_$i:
217 fn: 'file_${i}_*'
218 #end if
219 #end for
220 ]]></configfile>
221 </configfiles>
222 <inputs> 181 <inputs>
223 <repeat name="results" title="Results" min="1"> 182 <repeat name="results" title="Results" min="1">
224 <conditional name="software_cond"> 183 <conditional name="software_cond">
225 <param name="software" type="select" label="Which tool was used generate logs?" help="Software name"> 184 <param name="software" type="select" label="Which tool was used generate logs?" help="Software name">
226 <!--<option value="adapterRemoval">Adapter Removal</option>--> 185 <!--<option value="adapterRemoval">Adapter Removal</option>-->
285 <option value="snpeff">SnpEff</option> 244 <option value="snpeff">SnpEff</option>
286 <option value="sortmerna">SortMeRNA</option> 245 <option value="sortmerna">SortMeRNA</option>
287 <option value="star">STAR</option> 246 <option value="star">STAR</option>
288 <!--<option value="supernova">Supernova</option>--> 247 <!--<option value="supernova">Supernova</option>-->
289 <!--<option value="theta2">THeTA2</option>--> 248 <!--<option value="theta2">THeTA2</option>-->
290 <option value="tophat">TopHat2</option> 249 <option value="tophat">TopHat2 (TopHat2 is deprecated you should not use it)</option>
291 <option value="trimmomatic">Trimmomatic</option> 250 <option value="trimmomatic">Trimmomatic</option>
292 <option value="vcftools">VCFTools</option> 251 <option value="vcftools">VCFTools</option>
293 <!--<option value="verifybamid">VerifyBAMID</option>--> 252 <!--<option value="verifybamid">VerifyBAMID</option>-->
294 <!--Custom--> 253 <!--Custom-->
295 <option value="custom_content">Custom Content</option> 254 <option value="custom_content">Custom Content</option>
296 </param> 255 </param>
297 <when value="bamtools"> 256 <when value="bamtools">
298 <param name="input" type="data" format="txt" multiple="true" label="Output of BAMtools" help="It should contain 'Stats for BAM file(s)'"/> 257 <expand macro="bamtools_form"/>
299 </when> 258 </when>
300 <when value="bcftools"> 259 <when value="bcftools">
301 <param name="input" type="data" format="txt" multiple="true" label="Output of BAMtools" help="It should contain 'This file was produced by bcftools stats'"/> 260 <expand macro="bcftools_form"/>
302 </when> 261 </when>
303 <when value="bismark"> 262 <when value="bismark">
304 <repeat name="output" title="Bismark output" min="1"> 263 <expand macro="bismark_form"/>
305 <param name="type" type="select" label="Type of Bismark output?">
306 <option value="align">Alignment file</option>
307 <option value="dedup">Deduplication file</option>
308 <option value="meth_extract">Methylation file</option>
309 <option value="m_bias">m_bias file</option>
310 <option value="bam2nuc">bam2nuc file</option>
311 </param>
312 <param name="input" type="data" format="txt" multiple="true" label="Bismark output"/>
313 </repeat>
314 </when> 264 </when>
315 <when value="bowtie2"> 265 <when value="bowtie2">
316 <param name="input" type="data" format="txt" multiple="true" label="Output of Bowtie 2" help="It should contain 'reads; of these:'"/> 266 <expand macro="bowtie2_form"/>
317 </when> 267 </when>
318 <when value="busco"> 268 <when value="busco">
319 <param name="input" type="data" format="txt" multiple="true" label="Output of BUSCO"/> 269 <expand macro="busco_form"/>
320 </when> 270 </when>
321 <when value="cutadapt"> 271 <when value="cutadapt">
322 <param name="input" type="data" format="txt,tabular,tsv,csv" multiple="true" label="Output of Cutadapt" help="It should contain 'This is cutadapt' or 'You are running cutadapt'"/> 272 <expand macro="cutadapt_form"/>
323 </when> 273 </when>
324 <when value="deeptools"> 274 <when value="deeptools">
325 <repeat name="output" title="deepTools output" min="1"> 275 <expand macro="deeptools_form"/>
326 <param name="type" type="select" label="deepTool used to generate the output?">
327 <option value="bamPEFragmentSize">bamPEFragmentSize</option>
328 <option value="estimateReadFiltering">estimateReadFiltering</option>
329 <option value="plotCoverageStdout">plotCoverageStdout</option>
330 <option value="plotCoverageOutRawCounts">plotCoverageOutRawCounts</option>
331 <option value="plotEnrichment">plotEnrichment</option>
332 <option value="plotFingerprintOutRawCounts">plotFingerprintOutRawCounts</option>
333 <option value="plotFingerprintOutQualityMetrics">plotFingerprintOutQualityMetrics</option>
334 </param>
335 <param name="input" type="data" format="txt" multiple="true" label="Bismark output"/>
336 </repeat>
337 </when> 276 </when>
338 <when value="fastp"> 277 <when value="fastp">
339 <param name="input" type="data" format="json" multiple="true" label="Output of fastp" help="It should be the json report from fastp containing 'report_title'"/> 278 <expand macro="fastp_form"/>
340 </when> 279 </when>
341 <when value="fastqc"> 280 <when value="fastqc">
342 <repeat name="output" title="FastQC output" min="1"> 281 <expand macro="fastqc_form"/>
343 <param name="type" type="select" label="Type of FastQC output?">
344 <option value="data">Raw data</option>
345 <option value="theoretical_gc">Theorectical GC</option>
346 </param>
347 <param name="input" type="data" format="txt" multiple="true" label="FastQC output">
348 <validator type="expression" message="MultiQC does not accept the HTML report generated by FastQC, only the Raw Data">value is not None and value.extension != "html"</validator>
349 </param>
350 </repeat>
351 </when> 282 </when>
352 <when value="featureCounts"> 283 <when value="featureCounts">
353 <param name="input" type="data" format="txt,tabular,tsv,csv" multiple="true" label="Output of FeatureCounts"/> 284 <expand macro="featurecounts_form"/>
354 </when> 285 </when>
355 <when value="flexbar"> 286 <when value="flexbar">
356 <param name="input" type="data" format="txt,tabular,tsv,csv" multiple="true" label="Output of Flexbar" help="It should contain 'Flexbar - flexible barcode and adapter removal'"/> 287 <expand macro="flexbar_form"/>
357 </when> 288 </when>
358 <when value="gatk"> 289 <when value="gatk">
359 <repeat name="output" title="GATK output" min="1"> 290 <expand macro="gatk_form"/>
360 <param name="type" type="select" label="Type of GATK output?">
361 <option value="varianteval">Variant eval file</option>
362 <option value="base_recalibrator">Base recalibrator file</option>
363 </param>
364 <param name="input" type="data" format="txt" multiple="true" label="GATK output"/>
365 </repeat>
366 </when> 291 </when>
367 <when value="hicexplorer"> 292 <when value="hicexplorer">
368 <param name="input" type="data" format="txt,tabular" multiple="true" label="Output of HiCExplorer" help="It should contain 'Min rest. site distance'"/> 293 <param name="input" type="data" format="txt,tabular" multiple="true" label="Output of HiCExplorer" help="It should contain 'Min rest. site distance'"/>
369 </when> 294 </when>
370 <when value="hisat2"> 295 <when value="hisat2">
378 </when> 303 </when>
379 <when value="macs2"> 304 <when value="macs2">
380 <param name="input" type="data" format="txt,tabular,tsv" multiple="true" label="Output of MACS2" help="It should be a tabular file containing '# This file is generated by MACS'"/> 305 <param name="input" type="data" format="txt,tabular,tsv" multiple="true" label="Output of MACS2" help="It should be a tabular file containing '# This file is generated by MACS'"/>
381 </when> 306 </when>
382 <when value="picard"> 307 <when value="picard">
383 <repeat name="output" title="Picard output" min="1"> 308 <expand macro="picard_form"/>
384 <param name="type" type="select" label="Type of Picard output?">
385 <option value="alignment_metrics">Alignment metrics</option>
386 <option value="basedistributionbycycle">Base distribution by cycle</option>
387 <option value="gcbias">GC bias</option>
388 <option value="hsmetrics">HS Metrics</option>
389 <option value="insertsize">Insert size</option>
390 <option value="markdups">Markdups</option>
391 <option value="oxogmetrics">Oxog metrics</option>
392 <option value="pcr_metrics">PCR metrics</option>
393 <option value="rnaseqmetrics">RNA Seq metrics</option>
394 <option value="rrbs_metrics">RRBS metrics</option>
395 <option value="wgs_metrics">WGS metrics</option>
396 </param>
397 <param name="input" type="data" format="txt" multiple="true" label="Picard output"/>
398 </repeat>
399 </when> 309 </when>
400 <when value="prokka"> 310 <when value="prokka">
401 <param name="input" type="data" format="txt" multiple="true" label="Output of Prokka" help="It should contain 'contigs:'"/> 311 <param name="input" type="data" format="txt" multiple="true" label="Output of Prokka" help="It should contain 'contigs:'"/>
402 </when> 312 </when>
403 <when value="pycoqc"> 313 <when value="pycoqc">
404 <param name="input" type="data" format="txt,json" multiple="true" label="Output of PycoQC"/> 314 <expand macro="pycoqc_form"/>
405 </when> 315 </when>
406 <when value="qualimap"> 316 <when value="qualimap">
407 <param name="input" type="data" format="txt,tabular,tsv" multiple="true" label="Output of Qualimap BamQC" help="First result input should be genome_coverage (default from tool output). Run the Flatten Collection tool to keep all output in one report" /> 317 <expand macro="qualimap_form"/>
408 </when> 318 </when>
409 <when value="quast"> 319 <when value="quast">
410 <param name="input" type="data" format="tabular,tsv" multiple="true" label="Output of Quast"/> 320 <param name="input" type="data" format="tabular,tsv" multiple="true" label="Output of Quast"/>
411 </when> 321 </when>
412 <when value="rseqc"> 322 <when value="rseqc">
413 <repeat name="output" title="RSeQC output" min="1"> 323 <expand macro="rseqc_form"/>
414 <conditional name="type">
415 <param name="type" type="select" label="Type of RSeQC output?">
416 <option value="bam_stat">BAM/SAM mapping stats</option>
417 <option value="gene_body_coverage">Gene body coverage</option>
418 <option value="infer_experiment">Infer experiment</option>
419 <option value="inner_distance">Inner distance</option>
420 <option value="junction_annotation">Junction annotation</option>
421 <option value="junction_saturation">Junction saturation</option>
422 <option value="read_distribution">Read distribution</option>
423 <option value="read_duplication_pos">Read duplication</option>
424 <option value="read_gc">Read GC</option>
425 </param>
426 <when value="bam_stat">
427 <param name="input" type="data" format="txt,tabular" multiple="true" label="RSeQC BAM stat: output file" help="It should contain 'Proper-paired reads map to different chrom:'"/>
428 </when>
429 <when value="gene_body_coverage">
430 <param name="input" type="data" format="txt" multiple="true" label="RSeQC gene body coverage: stats file"/>
431 </when>
432 <when value="infer_experiment">
433 <param name="input" type="data" format="txt" multiple="true" label="RSeQC infer experiment: configuration output" help="It should contain 'Fraction of reads explained by'"/>
434 </when>
435 <when value="inner_distance">
436 <param name="input" type="data" format="txt" multiple="true" label="RSeQC inner distance: frequency file"/>
437 </when>
438 <when value="junction_annotation">
439 <param name="input" type="data" format="txt" multiple="true" label="RSeQC junction annotation: stats file" help="It should contain 'Partial Novel Splicing Junctions:'"/>
440 </when>
441 <when value="junction_saturation">
442 <param name="input" type="data" format="txt" multiple="true" label="RSeQC junction saturation: junction saturation plot Rscript file"/>
443 </when>
444 <when value="read_distribution">
445 <param name="input" type="data" format="txt" multiple="true" label="RSeQC read distribution: stats output" help="It should contain 'Group Total_bases Tag_count Tags/Kb'"/>
446 </when>
447 <when value="read_duplication_pos">
448 <param name="input" type="data" format="xls" multiple="true" label="RSeQC read duplication: positions XLS file"/>
449 </when>
450 <when value="read_gc">
451 <param name="input" type="data" format="csv,xls,tabular" multiple="true" label="RSeQC read GC output"/>
452 </when>
453 </conditional>
454 </repeat>
455 </when> 324 </when>
456 <when value="samblaster"> 325 <when value="samblaster">
457 <param name="input" type="data" format="txt,tabular,tsv,csv" multiple="true" label="Output of Samblaster" help="It should contain 'samblaster: Version'"/> 326 <param name="input" type="data" format="txt,tabular,tsv,csv" multiple="true" label="Output of Samblaster" help="It should contain 'samblaster: Version'"/>
458 </when> 327 </when>
459 <when value="samtools"> 328 <when value="samtools">
460 <repeat name="output" title="Samtools output" min="1"> 329 <expand macro="samtools_form"/>
461 <conditional name="type">
462 <param name="type" type="select" label="Type of Samtools output?">
463 <option value="stats">stats</option>
464 <option value="flagstat">flagstat</option>
465 <option value="idxstats">idxstats</option>
466 <option value="rmdup">rmdup</option>
467 </param>
468 <when value="stats">
469 <param name="input" type="data" format="txt" multiple="true" label="Samtools stats output" help="It should contain 'This file was produced by samtools stats'"/>
470 </when>
471 <when value="flagstat">
472 <param name="input" type="data" format="txt" multiple="true" label="Samtools flagstat output" help="It should contain 'in total (QC-passed reads + QC-failed reads)'"/>
473 </when>
474 <when value="idxstats">
475 <param name="input" type="data" format="txt" multiple="true" label="Samtools idxstats output"/>
476 </when>
477 <when value="rmdup">
478 <param name="input" type="data" format="txt" multiple="true" label="Samtools rmdup output" help="It should contain '[bam_rmdup'"/>
479 </when>
480 </conditional>
481 </repeat>
482 </when> 330 </when>
483 <when value="slamdunk"> 331 <when value="slamdunk">
484 <param name="input" type="data" format="txt,tabular" multiple="true" label="Output of Slamdunk Alleyoop" help="It should contain '# slamdunk'"/> 332 <param name="input" type="data" format="txt,tabular" multiple="true" label="Output of Slamdunk Alleyoop" help="It should contain '# slamdunk'"/>
485 </when> 333 </when>
486 <when value="snpeff"> 334 <when value="snpeff">
488 </when> 336 </when>
489 <when value="sortmerna"> 337 <when value="sortmerna">
490 <param name="input" type="data" format="txt" multiple="true" label="Log file of SortMeRNA" help="It should contain 'Minimal SW score based on E-value'"/> 338 <param name="input" type="data" format="txt" multiple="true" label="Log file of SortMeRNA" help="It should contain 'Minimal SW score based on E-value'"/>
491 </when> 339 </when>
492 <when value="star"> 340 <when value="star">
493 <repeat name="output" title="STAR output" min="1"> 341 <expand macro="star_form"/>
494 <conditional name="type">
495 <param name="type" type="select" label="Type of STAR output?">
496 <option value="log">Log</option>
497 <option value="genecounts">Gene counts</option>
498 </param>
499 <when value="log">
500 <param name="input" type="data" format="txt" multiple="true" label="STAR log output"/>
501 </when>
502 <when value="genecounts">
503 <param name="input" type="data" format="tabular,tsv" multiple="true" label="STAR gene count output"/>
504 </when>
505 </conditional>
506 </repeat>
507 </when> 342 </when>
508 <when value="tophat"> 343 <when value="tophat">
509 <param name="input" type="data" format="txt,tabular,tsv,csv" multiple="true" label="Output of TopHat2"/> 344 <param name="input" type="data" format="txt,tabular,tsv,csv" multiple="true" label="Output of TopHat2"/>
510 </when> 345 </when>
511 <when value="trimmomatic"> 346 <when value="trimmomatic">
512 <param name="input" type="data" format="txt,tabular,tsv,csv" multiple="true" label="Output of Trimmomatic" help="It should contain 'TTrimmomatic'"/> 347 <expand macro="trimmomatic_form"/>
513 </when> 348 </when>
514 <when value="vcftools"> 349 <when value="vcftools">
515 <repeat name="output" title="VCFTools output" min="1"> 350 <expand macro="vcftools_form"/>
516 <conditional name="type">
517 <param name="type" type="select" label="Type of VCFTools output?">
518 <option value="relatedness2">relatedness2</option>
519 <option value="tstv_by_count">tstv_by_count</option>
520 <option value="tstv_by_qual">tstv_by_qual</option>
521 <option value="tstv_summary">tstv_summary</option>
522 </param>
523 <when value="relatedness2">
524 <param name="input" type="data" format="txt" multiple="true" label="VCFTools relatedness2 output"/>
525 </when>
526 <when value="tstv_by_count">
527 <param name="input" type="data" format="tabular,tsv" multiple="true" label="VCFTools TsTV count output"/>
528 </when>
529 <when value="tstv_by_qual">
530 <param name="input" type="data" format="tabular" multiple="true" label="VCFTools TsTV qual output"/>
531 </when>
532 <when value="tstv_summary">
533 <param name="input" type="data" format="txt" multiple="true" label="VCFTools TsTV summary output"/>
534 </when>
535 </conditional>
536 </repeat>
537 </when> 351 </when>
538 <when value="custom_content"> 352 <when value="custom_content">
539 <param argument="plot_type" label="The plot type to visualise the data with" type="select"> 353 <param argument="plot_type" label="The plot type to visualise the data with" type="select">
540 <option value="linegraph">linegraph</option> 354 <option value="linegraph">linegraph</option>
541 <option value="bargraph">bargraph</option> 355 <option value="bargraph">bargraph</option>
542 <option value="scatter">scatter</option> 356 <option value="scatter">scatter</option>
543 <option value="generalstats">generalstats</option> 357 <option value="generalstats">generalstats</option>
544 <option value="table">table</option> 358 <option value="table">table</option>
545 </param> 359 </param>
546 <param argument="section_name" label="Section name" type="text" help="Nice name used for the report section header" /> 360 <param argument="section_name" label="Section name" type="text" help="Nice name used for the report section header"/>
547 <param argument="title" label="Title" type="text" help="Plot title" /> 361 <param argument="title" label="Title" type="text" help="Plot title"/>
548 <param argument="description" label="Description" type="text" help="Introductory text to be printed under the section header" /> 362 <param argument="description" label="Description" type="text" help="Introductory text to be printed under the section header"/>
549 <param argument="xlab" label="X axis label" type="text" /> 363 <param argument="xlab" label="X axis label" type="text"/>
550 <param argument="ylab" label="Y axis label" type="text" /> 364 <param argument="ylab" label="Y axis label" type="text"/>
551 <param name="input" type="data" format="tabular,tsv" multiple="true" label="Data files"/> 365 <param name="input" type="data" format="tabular,tsv" multiple="true" label="Data files"/>
552 </when> 366 </when>
553 </conditional> 367 </conditional>
554 </repeat> 368 </repeat>
555 <param name="title" type="text" value="" optional="true" label="Report title" help="It is printed as page header"> 369 <param name="title" type="text" value="" optional="true" label="Report title" help="It is printed as page header">
556 <sanitizer invalid_char=""> 370 <sanitizer invalid_char="">
557 <valid initial="string.letters,string.digits"> 371 <valid initial="string.letters,string.digits">
558 <add value="," /> 372 <add value=","/>
559 <add value=":" /> 373 <add value=":"/>
560 <add value="-" /> 374 <add value="-"/>
561 <add value="_" /> 375 <add value="_"/>
562 <add value=" " /> 376 <add value=" "/>
563 <add value="." /> 377 <add value="."/>
564 </valid> 378 </valid>
565 </sanitizer> 379 </sanitizer>
566 <validator type="regex">[0-9a-zA-Z,: _.-]+</validator> 380 <validator type="regex">[0-9a-zA-Z,: _.-]+</validator>
567 </param> 381 </param>
568 <param name="comment" type="text" value="" optional="true" label="Custom comment" help="It will be printed at the top of the report"> 382 <param name="comment" type="text" value="" optional="true" label="Custom comment" help="It will be printed at the top of the report">
569 <sanitizer invalid_char=""> 383 <sanitizer invalid_char="">
570 <valid initial="string.letters,string.digits"> 384 <valid initial="string.letters,string.digits">
571 <add value="," /> 385 <add value=","/>
572 <add value=":" /> 386 <add value=":"/>
573 <add value="-" /> 387 <add value="-"/>
574 <add value="_" /> 388 <add value="_"/>
575 <add value=" " /> 389 <add value=" "/>
576 <add value="." /> 390 <add value="."/>
577 </valid> 391 </valid>
578 </sanitizer> 392 </sanitizer>
579 <validator type="regex">[0-9a-zA-Z,: _.-]+</validator> 393 <validator type="regex">[0-9a-zA-Z,: _.-]+</validator>
580 </param> 394 </param>
581 <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."/> 395 <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."/>
582 <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"/> 396 <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"/>
583 <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"/>
584 </inputs> 397 </inputs>
585 <outputs> 398 <outputs>
586 <data name="html_report" format="html" from_work_dir="report.html" label="${tool.name} on ${on_string}: Webpage" /> 399 <data name="html_report" format="html" from_work_dir="report.html" label="${tool.name} on ${on_string}: Webpage"/>
587 <data name="log" format="txt" from_work_dir="report_data/multiqc.log" label="${tool.name} on ${on_string}: Log"> 400 <data name="stats" format="tabular" from_work_dir="report_data/multiqc_general_stats.txt" label="${tool.name} on ${on_string}: Stats"/>
588 <filter>saveLog</filter>
589 </data>
590 <collection name="stats" type="list" label="${tool.name} on ${on_string}: Stats">
591 <discover_datasets pattern="multiqc_(?P&lt;designation&gt;.+)\.txt" format="tabular" directory="report_data" />
592 </collection>
593 <collection name="plots" type="list" label="${tool.name} on ${on_string}: Plots"> 401 <collection name="plots" type="list" label="${tool.name} on ${on_string}: Plots">
594 <discover_datasets pattern="mqc_(?P&lt;designation&gt;.+)\.txt" format="tabular" directory="report_data" /> 402 <discover_datasets pattern="(?P&lt;designation&gt;.+)\.txt" format="tabular" directory="plots"/>
595 <filter>export</filter> 403 <filter>export</filter>
596 </collection> 404 </collection>
597 </outputs> 405 </outputs>
598 <tests> 406 <tests>
599 <!--Test 01--> 407 <expand macro="general_tests"/>
600 <test expect_num_outputs="4"> 408 <expand macro="bcftools_test"/>
601 <repeat name="results"> 409 <expand macro="bowtie2_test"/>
602 <conditional name="software_cond"> 410 <expand macro="fastqc_test"/>
603 <param name="software" value="cutadapt" /> 411 <expand macro="trimmomatic_test"/>
604 <param name="input" value="cutadapt.txt" /> 412 <!-- Test 10 -->
605 </conditional> 413 <expand macro="flexbar_test"/>
606 </repeat> 414 <expand macro="fastp_test"/>
607 <repeat name="results"> 415 <expand macro="bismark_test"/>
608 <conditional name="software_cond"> 416 <expand macro="rseqc_test"/>
609 <param name="software" value="fastp" /> 417 <expand macro="star_test"/>
610 <param name="input" value="fastp1.json.txt,fastp2.json.txt" /> 418 <expand macro="cutadapt_test"/>
611 </conditional> 419 <expand macro="samtools_test"/>
612 </repeat> 420 <expand macro="busco_test"/>
613 <repeat name="results"> 421 <expand macro="featurecounts_test"/>
614 <conditional name="software_cond"> 422 <expand macro="picard_test"/>
615 <param name="software" value="fastqc" /> 423 <!-- Test 20 -->
616 <repeat name="output"> 424 <expand macro="qualimap_test"/>
617 <param name="type" value="data"/> 425 <expand macro="gatk_test"/>
618 <param name="input" value="fastqc_1.txt,fastqc_2.txt"/> 426 <expand macro="bamtools_test"/>
619 </repeat> 427 <expand macro="pycoqc_test"/>
620 </conditional> 428
621 </repeat> 429 <!--expand macro="vcftools_test"/> Does not work, did it ever worked? -->
622 <repeat name="results"> 430
623 <conditional name="software_cond">
624 <param name="software" value="flexbar" />
625 <param name="input" value="flexbar.txt" />
626 </conditional>
627 </repeat>
628 <repeat name="results">
629 <conditional name="software_cond">
630 <param name="software" value="slamdunk" />
631 <param name="input" value="slamdunk_summary.txt,slamdunk_reads1_overallrates.csv,slamdunk_reads2_overallrates.csv" />
632 </conditional>
633 </repeat>
634 <repeat name="results">
635 <conditional name="software_cond">
636 <param name="software" value="sortmerna" />
637 <param name="input" value="sortmerna.txt" />
638 </conditional>
639 </repeat>
640 <repeat name="results">
641 <conditional name="software_cond">
642 <param name="software" value="trimmomatic" />
643 <param name="input" value="trimmomatic.txt" />
644 </conditional>
645 </repeat>
646 <param name="title" value="Title of the report"/>
647 <param name="comment" value="Commment for the report"/>
648 <param name="flat" value="true"/>
649 <param name="export" value="true"/>
650 <param name="saveLog" value="true"/>
651 <output name="html_report">
652 <assert_contents>
653 <has_text text="Title of the report" />
654 <has_text text="Commment for the report" />
655 <has_text text="cutadapt_trimmed_sequences_plot" />
656 <has_text text="An ultra-fast all-in-one FASTQ preprocessor" />
657 <has_text text="fastqc_seq_heatmap_key_t" />
658 <has_text text="flexbar_plot" />
659 <has_text text="a tool to analyze SLAMSeq data" />
660 <has_text text="sortmerna-detailed-plot" />
661 <has_text text="trimmomatic_plot" />
662 </assert_contents>
663 </output>
664 <output name="log">
665 <assert_contents>
666 <has_text_matching expression="\[INFO \] MultiQC complete$"/>
667 </assert_contents>
668 </output>
669 <output_collection name="stats" type="list" count="10">
670 <expand macro="element_assert" name="cutadapt" columns="9" lines="2" text="dataset_33"/>
671 <expand macro="element_assert" name="fastp" columns="2" lines="3" text="R1_fq"/>
672 <expand macro="element_assert" name="fastqc" columns="22" lines="3" text="poulet5_1"/>
673 <expand macro="element_assert" name="flexbar" columns="11" lines="2" text="result_right"/>
674 <expand macro="element_assert" name="general_stats" columns="20" lines="11" text="bwa-mem-fastq1_fq"/>
675 <expand macro="element_assert" name="slamdunk_readrates_plus" columns="13" lines="3" text="slamdunk_reads1_overallrates_csv"/>
676 <expand macro="element_assert" name="slamdunk_readrates_minus" columns="13" lines="3" text="slamdunk_reads1_overallrates_csv"/>
677 <expand macro="element_assert" name="sortmerna" columns="22" lines="2" text="25839_merged"/>
678 <expand macro="element_assert" name="sources" columns="4" lines="7" text="Module"/>
679 <expand macro="element_assert" name="trimmomatic" columns="6" lines="2" text="C2"/>
680 </output_collection>
681 <output_collection name="plots" type="list" count="29"/>
682 </test>
683 <!--Test 02-->
684 <test expect_num_outputs="2">
685 <repeat name="results">
686 <conditional name="software_cond">
687 <param name="software" value="bismark" />
688 <repeat name="output">
689 <param name="type" value="align"/>
690 <param name="input" value="bismark.txt"/>
691 </repeat>
692 </conditional>
693 </repeat>
694 <repeat name="results">
695 <conditional name="software_cond">
696 <param name="software" value="bowtie2" />
697 <param name="input" value="bowtie2_1.txt,bowtie2_2.txt" />
698 </conditional>
699 </repeat>
700 <repeat name="results">
701 <conditional name="software_cond">
702 <param name="software" value="hisat2" />
703 <param name="input" value="hisat2_1.txt,hisat2_2.txt" />
704 </conditional>
705 </repeat>
706 <repeat name="results">
707 <conditional name="software_cond">
708 <param name="software" value="hicexplorer" />
709 <param name="input" value="hicexplorer1.log,hicexplorer1.log,hicexplorer2.log" />
710 </conditional>
711 </repeat>
712 <repeat name="results">
713 <conditional name="software_cond">
714 <param name="software" value="kallisto" />
715 <param name="input" value="kallisto_1.txt,kallisto_2.txt" />
716 </conditional>
717 </repeat>
718 <repeat name="results">
719 <conditional name="software_cond">
720 <param name="software" value="macs2" />
721 <param name="input" value="macs_1.txt,macs_2.txt" />
722 </conditional>
723 </repeat>
724 <repeat name="results">
725 <conditional name="software_cond">
726 <param name="software" value="star" />
727 <repeat name="output">
728 <conditional name="type">
729 <param name="type" value="log"/>
730 <param name="input" value="star_log.txt" />
731 </conditional>
732 </repeat>
733 <repeat name="output">
734 <conditional name="type">
735 <param name="type" value="genecounts"/>
736 <param name="input" value="star_counts.txt" />
737 </conditional>
738 </repeat>
739 </conditional>
740 </repeat>
741 <repeat name="results">
742 <conditional name="software_cond">
743 <param name="software" value="tophat" />
744 <param name="input" value="tophat.txt" />
745 </conditional>
746 </repeat>
747 <param name="saveLog" value="false"/>
748 <output name="html_report">
749 <assert_contents>
750 <has_text text="bismark-alignment" />
751 <has_text text="bowtie2_se_plot" />
752 <has_text text="hisat2_se_plot" />
753 <has_text text="kallisto_alignment" />
754 <has_text text="MACS2" />
755 <has_text text="star_alignment_plot" />
756 <has_text text="tophat_alignment" />
757 <has_text text="hicexplorer" />
758 <has_text text="hicexplorer1_log_1" />
759 </assert_contents>
760 </output>
761 <output_collection name="stats" type="list" count="11">
762 <expand macro="element_assert" name="bismark_alignment" columns="21" lines="2" text="bismark_txt_SE_report"/>
763 <expand macro="element_assert" name="bowtie2" columns="7" lines="3" text="bowtie2_1_txt"/>
764 <expand macro="element_assert" name="cutadapt" columns="9" lines="5" text="HS002-PE-R00059_BD0U5YACXX.RHM067_CAGATC_L002_R2"/>
765 <expand macro="element_assert" name="general_stats" columns="22" lines="19" text="treat2"/>
766 <expand macro="element_assert" name="hicexplorer" columns="41" lines="4" text="hicexplorer_3_hicexplorer2_log_small_test_rf"/>
767 <expand macro="element_assert" name="hisat2" columns="6" lines="3" text="hisat2_2_txt"/>
768 <expand macro="element_assert" name="kallisto" columns="6" lines="3" text="HS002-PE-R00059_BD0U5YACXX.RHM067_CAGATC_L002_R1_val_1"/>
769 <expand macro="element_assert" name="macs" columns="12" lines="3" text="treat2"/>
770 <expand macro="element_assert" name="sources" columns="4" lines="18" text="Cutadapt"/>
771 <expand macro="element_assert" name="star" columns="27" lines="2" text="star_log_txt"/>
772 <expand macro="element_assert" name="tophat.txt" columns="9" lines="2" text="tophat_txtalign"/>
773 </output_collection>
774 </test>
775 <!--Test 03-->
776 <test expect_num_outputs="2">
777 <repeat name="results">
778 <conditional name="software_cond">
779 <param name="software" value="bamtools" />
780 <param name="input" value="bamtools.txt" />
781 </conditional>
782 </repeat>
783 <repeat name="results">
784 <conditional name="software_cond">
785 <param name="software" value="bcftools" />
786 <param name="input" value="bcftools.txt" />
787 </conditional>
788 </repeat>
789 <repeat name="results">
790 <conditional name="software_cond">
791 <param name="software" value="busco" />
792 <param name="input" value="busco.txt" />
793 </conditional>
794 </repeat>
795 <repeat name="results">
796 <conditional name="software_cond">
797 <param name="software" value="deeptools" />
798 <repeat name="output">
799 <param name="type" value="bamPEFragmentSize"/>
800 <param name="input" value="deeptools_bamPEFragmentSize.txt"/>
801 </repeat>
802 <repeat name="output">
803 <param name="type" value="estimateReadFiltering"/>
804 <param name="input" value="deeptools_estimateReadFiltering.txt"/>
805 </repeat>
806 <repeat name="output">
807 <param name="type" value="plotCoverageStdout"/>
808 <param name="input" value="deeptools_plotCoverageStdout.txt"/>
809 </repeat>
810 <repeat name="output">
811 <param name="type" value="plotCoverageOutRawCounts"/>
812 <param name="input" value="deeptools_plotCoverageOutRawCounts.txt"/>
813 </repeat>
814 <repeat name="output">
815 <param name="type" value="plotEnrichment"/>
816 <param name="input" value="deeptools_plotEnrichment.txt"/>
817 </repeat>
818 <repeat name="output">
819 <param name="type" value="plotFingerprintOutRawCounts"/>
820 <param name="input" value="deeptools_plotFingerprintOutRawCounts.txt"/>
821 </repeat>
822 </conditional>
823 </repeat>
824 <repeat name="results">
825 <conditional name="software_cond">
826 <param name="software" value="featureCounts" />
827 <param name="input" value="featureCounts.txt" />
828 </conditional>
829 </repeat>
830 <repeat name="results">
831 <conditional name="software_cond">
832 <param name="software" value="gatk" />
833 <repeat name="output">
834 <param name="type" value="base_recalibrator"/>
835 <param name="input" value="gatk_BaseRecalibrator.txt"/>
836 </repeat>
837 <repeat name="output">
838 <param name="type" value="varianteval"/>
839 <param name="input" value="gatk_varianteval.txt"/>
840 </repeat>
841 </conditional>
842 </repeat>
843 <repeat name="results">
844 <conditional name="software_cond">
845 <param name="software" value="htseq" />
846 <param name="input" value="htseq.txt" />
847 </conditional>
848 </repeat>
849 <repeat name="results">
850 <conditional name="software_cond">
851 <param name="software" value="picard" />
852 <repeat name="output">
853 <param name="type" value="gcbias"/>
854 <param name="input" value="picard_collectGcBias.txt"/>
855 </repeat>
856 <repeat name="output">
857 <param name="type" value="insertsize"/>
858 <param name="input" value="picard_CollectInsertSizeMetrics.txt"/>
859 </repeat>
860 <repeat name="output">
861 <param name="type" value="markdups"/>
862 <param name="input" value="picard_MarkDuplicates.txt"/>
863 </repeat>
864 <repeat name="output">
865 <param name="type" value="basedistributionbycycle"/>
866 <param name="input" value="picard_CollectBaseDistributionByCycle.txt"/>
867 </repeat>
868 <repeat name="output">
869 <param name="type" value="rnaseqmetrics"/>
870 <param name="input" value="picard_CollectRnaSeqMetrics.txt"/>
871 </repeat>
872 <repeat name="output">
873 <param name="type" value="alignment_metrics"/>
874 <param name="input" value="picard_CollectAlignmentSummaryMetrics.txt"/>
875 </repeat>
876 </conditional>
877 </repeat>
878 <repeat name="results">
879 <conditional name="software_cond">
880 <param name="software" value="prokka" />
881 <param name="input" value="prokka_1.txt,prokka_2.txt" />
882 </conditional>
883 </repeat>
884 <repeat name="results">
885 <conditional name="software_cond">
886 <param name="software" value="qualimap" />
887 <param name="input" value="genome_results.txt" />
888 </conditional>
889 </repeat>
890 <repeat name="results">
891 <conditional name="software_cond">
892 <param name="software" value="quast" />
893 <param name="input" value="quast.tsv" />
894 </conditional>
895 </repeat>
896 <repeat name="results">
897 <conditional name="software_cond">
898 <param name="software" value="rseqc" />
899 <repeat name="output">
900 <conditional name="type">
901 <param name="type" value="read_gc"/>
902 <param name="input" value="rseqc.txt"/>
903 </conditional>
904 </repeat>
905 </conditional>
906 </repeat>
907 <repeat name="results">
908 <conditional name="software_cond">
909 <param name="software" value="samblaster" />
910 <param name="input" value="samblaster.txt" />
911 </conditional>
912 </repeat>
913 <repeat name="results">
914 <conditional name="software_cond">
915 <param name="software" value="samtools" />
916 <repeat name="output">
917 <conditional name="type">
918 <param name="type" value="stats"/>
919 <param name="input" value="samtools_stats.txt"/>
920 </conditional>
921 </repeat>
922 <repeat name="output">
923 <conditional name="type">
924 <param name="type" value="flagstat"/>
925 <param name="input" value="samtools_flagstat.txt"/>
926 </conditional>
927 </repeat>
928 <repeat name="output">
929 <conditional name="type">
930 <param name="type" value="idxstats"/>
931 <param name="input" value="samtools_idxstats.txt"/>
932 </conditional>
933 </repeat>
934 </conditional>
935 </repeat>
936 <repeat name="results">
937 <conditional name="software_cond">
938 <param name="software" value="snpeff" />
939 <param name="input" value="snpeff.csv" ftype="csv" />
940 </conditional>
941 </repeat>
942 <repeat name="results">
943 <conditional name="software_cond">
944 <param name="software" value="vcftools" />
945 <repeat name="output">
946 <conditional name="type">
947 <param name="type" value="tstv_by_qual"/>
948 <param name="input" value="vcftools.txt"/>
949 </conditional>
950 </repeat>
951 <param name="input" value="vcftools.txt" />
952 </conditional>
953 </repeat>
954 <output name="html_report">
955 <assert_contents>
956 <has_text text="bamtools-stats" />
957 <has_text text="bcftools_stats_indel-lengths" />
958 <has_text text="busco-lineage-fungi_odb9" />
959 <has_text text="deeptools" />
960 <has_text text="featureCounts_assignment_plot" />
961 <has_text text="gatk_varianteval_variant_plot" />
962 <has_text text="htseq_assignment_plot" />
963 <has_text text="picard_alignment_readlength" />
964 <has_text text="picard-rna-assignment" />
965 <has_text text="picard-markduplicates" />
966 <has_text text="picard-insertsize" />
967 <has_text text="picard-gcbias" />
968 <has_text text="prokka_plot" />
969 <has_text text="qualimap" />
970 <has_text text="samblaster_duplicates" />
971 <has_text text="quast-stats" />
972 <has_text text="samtools-flagstat-dp" />
973 <has_text text="snpeff" />
974 </assert_contents>
975 </output>
976 <output_collection name="stats" type="list" count="21">
977 <expand macro="element_assert" name="bamtools_stats" columns="20" lines="2" text="bamtools_txt"/>
978 <expand macro="element_assert" name="bcftools_stats" columns="28" lines="2" text="Test1"/>
979 <expand macro="element_assert" name="busco" columns="8" lines="2" text="busco_txt"/>
980 <expand macro="element_assert" name="featureCounts" columns="14" lines="7" text="5: TopHat on data 1, data 14, and data 13"/>
981 <expand macro="element_assert" name="gatk_varianteval" columns="12" lines="2" text="gatk_varianteval_txt"/>
982 <expand macro="element_assert" name="general_stats" columns="44" lines="23" text="x_bam"/>
983 <expand macro="element_assert" name="htseq" columns="9" lines="2" text="htseq_txt"/>
984 <expand macro="element_assert" name="picard_AlignmentSummaryMetrics" columns="26" lines="2" text="D11_H4K16ac_Rep1_R1_fastq_gz"/>
985 <expand macro="element_assert" name="picard_RnaSeqMetrics" columns="27" lines="2" text="picard_CollectRnaSeqMetrics_bam"/>
986 <expand macro="element_assert" name="picard_baseContent" columns="11" lines="2" text="D11_H4K16ac_Rep1_R1_fastq_gz"/>
987 <expand macro="element_assert" name="picard_dups" columns="10" lines="2" text="dataset_114"/>
988 <expand macro="element_assert" name="picard_insertSize" columns="23" lines="2" text="dataset_197_FR"/>
989 <expand macro="element_assert" name="prokka" columns="11" lines="3" text="Sample2"/>
990 <expand macro="element_assert" name="qualimap_bamqc_genome_results" columns="12" lines="2" text="x_bam"/>
991 <expand macro="element_assert" name="quast" columns="50" lines="2" text="14892_1#15"/>
992 <expand macro="element_assert" name="samblaster" columns="5" lines="2" text="virtual-normal"/>
993 <expand macro="element_assert" name="samtools_flagstat" columns="34" lines="2" text="samtools_flagstat_txt">
994 <has_text text="samtools_flagstat" />
995 <has_text text="mapped_passed" />
996 <has_text text="20689039" />
997 </expand>
998 <expand macro="element_assert" name="samtools_idxstats" columns="68" lines="2" text="samtools_idxstats_txt_idxstat"/>
999 <expand macro="element_assert" name="samtools_stats" columns="40" lines="2" text="samtools_stats_txt"/>
1000 <expand macro="element_assert" name="snpeff" columns="169" lines="2" text="snpeff_csv"/>
1001 <expand macro="element_assert" name="sources" columns="4" lines="33" text="Bamtools"/>
1002 </output_collection>
1003 </test>
1004 <!--Test 04-->
1005 <test expect_num_outputs="2">
1006 <repeat name="results">
1007 <conditional name="software_cond">
1008 <param name="software" value="custom_content" />
1009 <param name="cc_select" value="manual" />
1010 <param name="plot_type" value="linegraph" />
1011 <param name="section_name" value="BPC" />
1012 <param name="description" value="Sum of intensity (Y) of the most intense peaks at each retention time(X)" />
1013 <param name="xlab" value="Retention Time" />
1014 <param name="ylab" value="Base Peak Intensity" />
1015 <param name="input" value="cc_ko15.bpc.tab,cc_wt15.bpc.tab" />
1016 </conditional>
1017 </repeat>
1018 <output name="html_report" ftype="html">
1019 <assert_contents>
1020 <has_size value="1110578" delta="500" />
1021 </assert_contents>
1022 </output>
1023 <output_collection name="stats" type="list" count="1"/>
1024 </test>
1025 <!--Test 05-->
1026 <test expect_num_outputs="3">
1027 <repeat name="results">
1028 <conditional name="software_cond">
1029 <param name="software" value="fastqc" />
1030 <repeat name="output">
1031 <param name="type" value="data"/>
1032 <param name="input" value="fastqc_1.txt,fastqc_2.txt"/>
1033 </repeat>
1034 </conditional>
1035 </repeat>
1036 <param name="title" value="Title of the report"/>
1037 <param name="comment" value="Commment for the report"/>
1038 <param name="flat" value="true"/>
1039 <param name="export" value="true"/>
1040 <output name="html_report">
1041 <assert_contents>
1042 <has_text text="Title of the report" />
1043 <has_text text="Commment for the report" />
1044 <has_text text="fastqc_seq_heatmap_key_t" />
1045 </assert_contents>
1046 </output>
1047 <output_collection name="stats" type="list" count="3">
1048 <expand macro="element_assert" name="fastqc" columns="22" lines="3" text="poulet5_2"/>
1049 <expand macro="element_assert" name="general_stats" columns="6" lines="3" text="poulet5_2"/>
1050 <expand macro="element_assert" name="sources" columns="4" lines="3" text="FastQC"/>
1051 </output_collection>
1052 <output_collection name="plots" type="list" count="7">
1053 <element name="fastqc_per_base_sequence_quality_plot_1" file="mqc_fastqc_per_base_sequence_quality_plot_1.txt" compare="sim_size" delta="10"/>
1054 </output_collection>
1055 </test>
1056 <!--Test 06-->
1057 <test expect_num_outputs="2">
1058 <repeat name="results">
1059 <conditional name="software_cond">
1060 <param name="software" value="pycoqc" />
1061 <param name="input" value="pycoqc.json"/>
1062 </conditional>
1063 </repeat>
1064 <param name="title" value="Title of the report"/>
1065 <param name="comment" value="Commment for the report"/>
1066 <!-- <param name="flat" value="true"/> -->
1067 <output name="html_report">
1068 <assert_contents>
1069 <has_text text="Title of the report" />
1070 <has_text text="Commment for the report" />
1071 <has_text text="General Statistics" />
1072 <has_text text="pycoqc_count_plot" />
1073 <has_text text="pycoqc_read_len_plot" />
1074 <has_text text="pycoqc_read_qual_plot" />
1075 </assert_contents>
1076 </output>
1077 <output_collection name="stats" type="list" count="2"/>
1078 </test>
1079 <!--Test 07-->
1080 <test expect_num_outputs="2">
1081 <repeat name="results">
1082 <conditional name="software_cond">
1083 <param name="software" value="rseqc" />
1084 <repeat name="output">
1085 <conditional name="type">
1086 <param name="type" value="junction_annotation"/>
1087 <param name="input" value="junction_annotation.txt"/>
1088 </conditional>
1089 </repeat>
1090 <repeat name="output">
1091 <conditional name="type">
1092 <param name="type" value="junction_saturation"/>
1093 <param name="input" value="junction_saturation.txt"/>
1094 </conditional>
1095 </repeat>
1096 </conditional>
1097 </repeat>
1098 <param name="title" value="RSEQC report"/>
1099 <!-- <param name="flat" value="true"/> -->
1100 <output name="html_report">
1101 <assert_contents>
1102 <has_text text="RSEQC report" />
1103 <has_text text="Junction Annotation" />
1104 <has_text text="Junction Saturation" />
1105 </assert_contents>
1106 </output>
1107 <output_collection name="stats" type="list" count="2"/>
1108 </test>
1109 </tests> 431 </tests>
1110 <help><![CDATA[ 432 <help><![CDATA[
1111 **What it does** 433 **What it does**
1112 434
1113 `MultiQC <http://multiqc.info/>`_ aggregates results from bioinformatics analyses across many samples into a single report. It takes results of multiple analyses and creates a report that can be viewed as a single beautiful web-page. It's a general use tool, perfect for summarizing the output from numerous bioinformatics tools. 435 `MultiQC <http://multiqc.info/>`_ aggregates results from bioinformatics analyses across many samples into a single report.
436 It takes results of multiple analyses and creates a report that can be viewed as a single beautiful web-page.
437 It's a general use tool, perfect for summarizing the output from numerous bioinformatics tools.
1114 438
1115 **Inputs** 439 **Inputs**
1116 440
1117 MultiQC takes software output summaries/logs and creates a single report from them. You need to tell the tool which software was used to generate the report. This is done using the **Software name** dropdown. At present only the Galaxy tools found in the ToolShed produce logs that can used with MultiQC 441 MultiQC takes software output summaries/logs and creates a single report from them. You need to tell the tool which software was used to generate the report.
1118 442 This is done using the **Software name** dropdown. At present only the Galaxy tools found in the ToolShed produce logs that can used with MultiQC
1119 ---- 443
1120
1121 The first integration of this tool was made by
1122 `@cmonjeau <https://github.com/cmonjeau>`_ and `@yvanlebras <https://github.com/yvanlebras>`_.
1123 It is now maintained by the `Intergalactic Utilities Commission <https://galaxyproject.org/iuc>`_.
1124 ]]></help> 444 ]]></help>
1125 <citations> 445 <citations>
1126 <citation type="doi">10.1093/bioinformatics/btw354</citation> 446 <citation type="doi">10.1093/bioinformatics/btw354</citation>
1127 </citations> 447 </citations>
448 <creator>
449 <person givenName="Cyril" familyName="Monjeaud" url="https://github.com/cmonjeau"/>
450 <person givenName="Yvan" familyName="Le Bras" url="https://github.com/yvanlebras"/>
451 <person givenName="Bérénice" familyName="Batut" url="https://github.com/bebatut"/>
452 <person givenName="Björn" familyName="Grüning" url="https://github.com/bgruening"/>
453 </creator>
1128 </tool> 454 </tool>