comparison map_damage.xml @ 2:0287e2f82b64 draft default tip

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/map_damage commit 54378f7937205ec8ddf87440a5d78c3d0d3c8efa
author iuc
date Tue, 22 Jul 2025 09:02:06 +0000
parents 761b6fdcac6e
children
comparison
equal deleted inserted replaced
1:761b6fdcac6e 2:0287e2f82b64
1 <tool id="map_damage" name="mapDamage" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="23.2"> 1 <tool id="map_damage" name="mapDamage" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="23.2">
2
3 <description>Tracks and quantifies damage patterns in ancient DNA sequences</description> 2 <description>Tracks and quantifies damage patterns in ancient DNA sequences</description>
4
5 <macros> 3 <macros>
6 <token name="@TOOL_VERSION@">2.2.2</token> 4 <token name="@TOOL_VERSION@">2.2.3</token>
7 <token name="@VERSION_SUFFIX@">0</token> 5 <token name="@VERSION_SUFFIX@">0</token>
8 </macros> 6 </macros>
9
10 <xrefs> 7 <xrefs>
11 <xref type="bio.tools">mapdamage</xref> 8 <xref type="bio.tools">mapdamage</xref>
12 </xrefs> 9 </xrefs>
13
14 <requirements> 10 <requirements>
15 <requirement type="package" version="@TOOL_VERSION@">mapdamage2</requirement> 11 <requirement type="package" version="@TOOL_VERSION@">mapdamage2</requirement>
16 </requirements> 12 </requirements>
17
18 <version_command><![CDATA[mapDamage --version]]></version_command> 13 <version_command><![CDATA[mapDamage --version]]></version_command>
19
20 <command detect_errors="aggressive"><![CDATA[ 14 <command detect_errors="aggressive"><![CDATA[
21 15
22 ln -s '$sbam_file' alignment.$sbam_file.ext && 16 ln -s '$sbam_file' alignment.$sbam_file.ext &&
23
24 #if $reference.ref_source == 'history': 17 #if $reference.ref_source == 'history':
25 ln -s '$reference.history_reference' reference.fa && 18 ln -s '$reference.history_reference' reference.fa &&
26 #end if 19 #end if
27
28 ## MAIN COMMAND LINE 20 ## MAIN COMMAND LINE
29 21
30 mapDamage 22 mapDamage
31 23
32 ## INPUT / OUTPUT PARAMETERS 24 ## INPUT / OUTPUT PARAMETERS
105 ]]></command> 97 ]]></command>
106 98
107 <inputs> 99 <inputs>
108 100
109 <!--INPUT FILES--> 101 <!--INPUT FILES-->
110
111 <param name="sbam_file" argument="--input" type="data" format="sam,bam" label="SAM / BAM input file of aligned reads to be analyzed." help="Must contain a valid header."/> 102 <param name="sbam_file" argument="--input" type="data" format="sam,bam" label="SAM / BAM input file of aligned reads to be analyzed." help="Must contain a valid header."/>
112 103
113 <conditional name="reference"> 104 <conditional name="reference">
114 <param name="ref_source" type="select" label="Use a built-in FASTA reference or retrieve one from your history?"> 105 <param name="ref_source" type="select" label="Use a built-in FASTA reference or retrieve one from your history?">
115 <option value="builtin" selected="true">Built-in reference FASTA file</option> 106 <option value="builtin" selected="true">Built-in reference FASTA file</option>
127 </conditional> 118 </conditional>
128 119
129 <!--GENERAL OPTIONS--> 120 <!--GENERAL OPTIONS-->
130 121
131 <param argument="--merge-reference-sequences" type="boolean" truevalue="--merge-reference-sequences" falsevalue="" label="Merge reference sequences in result files?" help="Useful for memory usage."/> 122 <param argument="--merge-reference-sequences" type="boolean" truevalue="--merge-reference-sequences" falsevalue="" label="Merge reference sequences in result files?" help="Useful for memory usage."/>
132
133 <param argument="--min-basequal" type="integer" min="0" max="93" value="0" label="Minimum PHRED score for base to be considered" help="(assumes PHRED+33 score)"/> 123 <param argument="--min-basequal" type="integer" min="0" max="93" value="0" label="Minimum PHRED score for base to be considered" help="(assumes PHRED+33 score)"/>
134
135 <param argument="--fasta" type="boolean" checked="false" truevalue="--fasta" falsevalue="" label="Output alignments in FASTA format?"/> 124 <param argument="--fasta" type="boolean" checked="false" truevalue="--fasta" falsevalue="" label="Output alignments in FASTA format?"/>
136
137 <section name="downsampling" title="Downsampling"> 125 <section name="downsampling" title="Downsampling">
138 <conditional name="downsampling"> 126 <conditional name="downsampling">
139 <param name="downsampling_type" type="select" label="Type of downsampling" help="Downsample using a percentage or a number of reads?"> 127 <param name="downsampling_type" type="select" label="Type of downsampling" help="Downsample using a percentage or a number of reads?">
140 <option value="no_downsampling" selected="true">No downsampling</option> 128 <option value="no_downsampling" selected="true">No downsampling</option>
141 <option value="p">Percentage of reads</option> 129 <option value="p">Percentage of reads</option>
151 <when value="n"> 139 <when value="n">
152 <param argument="--downsample" type="integer" min="1" value="1000" label="Number of reads to sample" help="Must be superior or equal to 1"/> 140 <param argument="--downsample" type="integer" min="1" value="1000" label="Number of reads to sample" help="Must be superior or equal to 1"/>
153 <param argument="--downsample-seed" type="integer" optional="true" label="Downsampling seed" help="Seed (integer) used to randomly select reads for downsampling. Useful for reproducibility."/> 141 <param argument="--downsample-seed" type="integer" optional="true" label="Downsampling seed" help="Seed (integer) used to randomly select reads for downsampling. Useful for reproducibility."/>
154 </when> 142 </when>
155 </conditional> 143 </conditional>
156
157 </section> 144 </section>
158
159 <section name="window_size" title="Analysis Window Size"> 145 <section name="window_size" title="Analysis Window Size">
160 <param argument="--length" type="integer" min="1" value="70" label="Number of nucleotides to process, starting from 5p and 3p end of read" help="(Bases which are located further than this from one of the two read ends will not be analyzed)"/> 146 <param argument="--length" type="integer" min="1" value="70" label="Number of nucleotides to process, starting from 5p and 3p end of read" help="(Bases which are located further than this from one of the two read ends will not be analyzed)"/>
161 <param argument="--around" type="integer" min="0" value="10" label="Number of nucleotides to retrieve before and after read" help="(This is used in order to look at purine enrichment before strand breaks)"/> 147 <param argument="--around" type="integer" min="0" value="10" label="Number of nucleotides to retrieve before and after read" help="(This is used in order to look at purine enrichment before strand breaks)"/>
162 </section> 148 </section>
163 149
237 </section> 223 </section>
238 224
239 </inputs> 225 </inputs>
240 226
241 <outputs> 227 <outputs>
242
243 <!--RUNTIME LOG FILE--> 228 <!--RUNTIME LOG FILE-->
244
245 <data name="runtime_log" format="txt" from_work_dir="mapDamage_results/Runtime_log.txt" label="${tool.name} on ${on_string}: Runtime_log.txt"/> 229 <data name="runtime_log" format="txt" from_work_dir="mapDamage_results/Runtime_log.txt" label="${tool.name} on ${on_string}: Runtime_log.txt"/>
246 230
247 <!--RESULT FILES THAT DESCRIBE DNA DAMAGE OBSERVED ON READS--> 231 <!--RESULT FILES THAT DESCRIBE DNA DAMAGE OBSERVED ON READS-->
248 232
249 <collection name="damage_visualisation" type="list" label="${tool.name} on ${on_string}: Data description files and plots"> 233 <collection name="damage_visualisation" type="list" label="${tool.name} on ${on_string}: Data description files and plots">
250 <data name="dnacomp" format="txt" from_work_dir="mapDamage_results/dnacomp.txt" label="${tool.name} on ${on_string}: dnacomp.txt"/> 234 <data name="dnacomp" format="txt" from_work_dir="mapDamage_results/dnacomp.txt" label="${tool.name} on ${on_string}: dnacomp.txt"/>
251 <data name="misincorporation" format="txt" from_work_dir="mapDamage_results/misincorporation.txt" label="${tool.name} on ${on_string}: misincorporation.txt"/> 235 <data name="misincorporation" format="txt" from_work_dir="mapDamage_results/misincorporation.txt" label="${tool.name} on ${on_string}: misincorporation.txt"/>
272 <!--OPTIONAL ALIGNMENT OUTPUT FILES--> 256 <!--OPTIONAL ALIGNMENT OUTPUT FILES-->
273 257
274 <data name="rescaled_bam" format="bam" from_work_dir="mapDamage_results/alignment.rescaled.bam" label="${tool.name} on ${on_string}: Rescaled .bam file"> 258 <data name="rescaled_bam" format="bam" from_work_dir="mapDamage_results/alignment.rescaled.bam" label="${tool.name} on ${on_string}: Rescaled .bam file">
275 <filter>rescale['rescaling']['rescale'] == '--rescale'</filter> 259 <filter>rescale['rescaling']['rescale'] == '--rescale'</filter>
276 </data> 260 </data>
277
278 <data name="fasta_alignment" format="fasta" from_work_dir="mapDamage_results/alignment.fasta" label="${tool.name} on ${on_string}: FASTA file of alignments"> 261 <data name="fasta_alignment" format="fasta" from_work_dir="mapDamage_results/alignment.fasta" label="${tool.name} on ${on_string}: FASTA file of alignments">
279 <filter>fasta</filter> 262 <filter>fasta</filter>
280 </data> 263 </data>
281
282 </outputs> 264 </outputs>
283 265
284 <tests> 266 <tests>
285 267
286 <!--GENERAL TESTS--> 268 <!--GENERAL TESTS-->
287 <!--NB: only data_visualisation files are tested, as the statistical estimation process is stochastic and files will always be different--> 269 <!--NB: only data_visualisation files are tested, as the statistical estimation process is stochastic and files will always be different-->
288
289 <!--SAM input--> 270 <!--SAM input-->
290 <test expect_num_outputs="17" expect_exit_code="0"> 271 <test expect_num_outputs="17" expect_exit_code="0">
291 272 <param name="sbam_file" value="test_align.sam" ftype="sam"/>
292 <param name="sbam_file" value="test_align.sam" ftype="sam"/> 273 <conditional name="reference">
293 <conditional name="reference"> 274 <param name="ref_source" value="history"/>
294 <param name="ref_source" value="history"/> 275 <param name="history_reference" value="ref.fa" ftype="fasta"/>
295 <param name="history_reference" value="ref.fa" ftype="fasta"/> 276 </conditional>
296 </conditional> 277 <output_collection name="damage_visualisation" type="list">
297 278 <element name="misincorporation" file="reference_misincorporation.txt" compare="diff" lines_diff="2"/>
298 <output_collection name="damage_visualisation" type="list"> 279 <element name="lgdistribution" file="reference_lgdistribution.txt" compare="diff" lines_diff="2"/>
299 <element name="misincorporation" file="reference_misincorporation.txt" compare="diff" lines_diff="2"/> 280 </output_collection>
300 <element name="lgdistribution" file="reference_lgdistribution.txt" compare="diff" lines_diff="2"/> 281 </test>
301 </output_collection> 282
302 283 <!--BAM input-->
303 </test> 284 <test expect_num_outputs="17" expect_exit_code="0">
304 285 <param name="sbam_file" value="test_align.bam" ftype="bam"/>
305 <!--BAM input--> 286 <conditional name="reference">
306 <test expect_num_outputs="17" expect_exit_code="0"> 287 <param name="ref_source" value="history"/>
307 288 <param name="history_reference" value="ref.fa" ftype="fasta"/>
308 <param name="sbam_file" value="test_align.bam" ftype="bam"/> 289 </conditional>
309 <conditional name="reference"> 290 <output_collection name="damage_visualisation" type="list">
310 <param name="ref_source" value="history"/> 291 <element name="misincorporation" file="reference_misincorporation.txt" compare="diff" lines_diff="2"/>
311 <param name="history_reference" value="ref.fa" ftype="fasta"/> 292 <element name="lgdistribution" file="reference_lgdistribution.txt" compare="diff" lines_diff="2"/>
312 </conditional> 293 </output_collection>
313 294 </test>
314 <output_collection name="damage_visualisation" type="list">
315 <element name="misincorporation" file="reference_misincorporation.txt" compare="diff" lines_diff="2"/>
316 <element name="lgdistribution" file="reference_lgdistribution.txt" compare="diff" lines_diff="2"/>
317 </output_collection>
318
319
320 </test>
321 295
322 <!--TEST TO VERIFY BUILT-IN REFERENCE GENOMES WORK AS INTENDED--> 296 <!--TEST TO VERIFY BUILT-IN REFERENCE GENOMES WORK AS INTENDED-->
323 <test expect_num_outputs="9" expect_exit_code="0"> 297 <test expect_num_outputs="9" expect_exit_code="0">
324
325 <param name="sbam_file" value="test_align.bam" ftype="bam"/> 298 <param name="sbam_file" value="test_align.bam" ftype="bam"/>
326 <conditional name="reference"> 299 <conditional name="reference">
327 <param name="ref_source" value="builtin"/> 300 <param name="ref_source" value="builtin"/>
328 <param name="builtin_reference" value="test"/> 301 <param name="builtin_reference" value="test"/>
329 </conditional> 302 </conditional>
330 <section name="statistics"> 303 <section name="statistics">
331 <conditional name="stats"> 304 <conditional name="stats">
332 <param name="no_stats" value="--no-stats"/> 305 <param name="no_stats" value="--no-stats"/>
333 </conditional> 306 </conditional>
334 </section> 307 </section>
335
336 <output_collection name="damage_visualisation" type="list"> 308 <output_collection name="damage_visualisation" type="list">
337 <element name="misincorporation" file="reference_misincorporation.txt" compare="diff" lines_diff="2"/> 309 <element name="misincorporation" file="reference_misincorporation.txt" compare="diff" lines_diff="2"/>
338 <element name="lgdistribution" file="reference_lgdistribution.txt" compare="diff" lines_diff="2"/> 310 <element name="lgdistribution" file="reference_lgdistribution.txt" compare="diff" lines_diff="2"/>
339 </output_collection> 311 </output_collection>
340
341 </test> 312 </test>
342 313
343 <!--TEST TO VERIFY no_stats OPTION WORKS AS INTENDED--> 314 <!--TEST TO VERIFY no_stats OPTION WORKS AS INTENDED-->
344 <test expect_num_outputs="9" expect_exit_code="0"> 315 <test expect_num_outputs="9" expect_exit_code="0">
345
346 <param name="sbam_file" value="test_align.sam" ftype="sam"/> 316 <param name="sbam_file" value="test_align.sam" ftype="sam"/>
347 <conditional name="reference"> 317 <conditional name="reference">
348 <param name="ref_source" value="history"/> 318 <param name="ref_source" value="history"/>
349 <param name="history_reference" value="ref.fa" ftype="fasta"/> 319 <param name="history_reference" value="ref.fa" ftype="fasta"/>
350 </conditional> 320 </conditional>
351 <section name="statistics"> 321 <section name="statistics">
352 <conditional name="stats"> 322 <conditional name="stats">
353 <param name="no_stats" value="--no-stats"/> 323 <param name="no_stats" value="--no-stats"/>
354 </conditional> 324 </conditional>
355 </section> 325 </section>
356
357 <output_collection name="damage_visualisation" type="list"> 326 <output_collection name="damage_visualisation" type="list">
358 <element name="misincorporation" file="reference_misincorporation.txt" compare="diff" lines_diff="2"/> 327 <element name="misincorporation" file="reference_misincorporation.txt" compare="diff" lines_diff="2"/>
359 <element name="lgdistribution" file="reference_lgdistribution.txt" compare="diff" lines_diff="2"/> 328 <element name="lgdistribution" file="reference_lgdistribution.txt" compare="diff" lines_diff="2"/>
360 </output_collection> 329 </output_collection>
361
362 </test> 330 </test>
363 331
364 <!--TEST TO VERIFY fasta OPTION WORKS AS INTENDED--> 332 <!--TEST TO VERIFY fasta OPTION WORKS AS INTENDED-->
365
366 <test expect_num_outputs="10" expect_exit_code="0"> 333 <test expect_num_outputs="10" expect_exit_code="0">
367
368 <param name="sbam_file" value="test_align.sam" ftype="sam"/> 334 <param name="sbam_file" value="test_align.sam" ftype="sam"/>
369 <conditional name="reference"> 335 <conditional name="reference">
370 <param name="ref_source" value="history"/> 336 <param name="ref_source" value="history"/>
371 <param name="history_reference" value="ref.fa" ftype="fasta"/> 337 <param name="history_reference" value="ref.fa" ftype="fasta"/>
372 </conditional> 338 </conditional>
374 <conditional name="stats"> 340 <conditional name="stats">
375 <param name="no_stats" value="--no-stats"/> 341 <param name="no_stats" value="--no-stats"/>
376 </conditional> 342 </conditional>
377 </section> 343 </section>
378 <param name="fasta" value="true"/> 344 <param name="fasta" value="true"/>
379
380 <output_collection name="damage_visualisation" type="list"> 345 <output_collection name="damage_visualisation" type="list">
381 <element name="misincorporation" file="reference_misincorporation.txt" compare="diff" lines_diff="2"/> 346 <element name="misincorporation" file="reference_misincorporation.txt" compare="diff" lines_diff="2"/>
382 <element name="lgdistribution" file="reference_lgdistribution.txt" compare="diff" lines_diff="2"/> 347 <element name="lgdistribution" file="reference_lgdistribution.txt" compare="diff" lines_diff="2"/>
383 </output_collection> 348 </output_collection>
384
385 <output name="fasta_alignment" file="alignment.fa" compare="diff" count="1"/> 349 <output name="fasta_alignment" file="alignment.fa" compare="diff" count="1"/>
386
387 </test> 350 </test>
388 351
389 <!--TEST TO VERIFY rescale OPTION WORKS AS INTENDED--> 352 <!--TEST TO VERIFY rescale OPTION WORKS AS INTENDED-->
390 <!--BAM file is not compared, as it depends on the stochastic statistical estimations, and may therefore differ (though perhaps not with this dataset)--> 353 <!--BAM file is not compared, as it depends on the stochastic statistical estimations, and may therefore differ (though perhaps not with this dataset)-->
391 <test expect_num_outputs="18" expect_exit_code="0"> 354 <test expect_num_outputs="18" expect_exit_code="0">
392
393 <param name="sbam_file" value="test_align.sam" ftype="sam"/> 355 <param name="sbam_file" value="test_align.sam" ftype="sam"/>
394 <conditional name="reference"> 356 <conditional name="reference">
395 <param name="ref_source" value="history"/> 357 <param name="ref_source" value="history"/>
396 <param name="history_reference" value="ref.fa" ftype="fasta"/> 358 <param name="history_reference" value="ref.fa" ftype="fasta"/>
397 </conditional> 359 </conditional>
398 <section name="rescale"> 360 <section name="rescale">
399 <conditional name="rescaling"> 361 <conditional name="rescaling">
400 <param name="rescale" value="--rescale"/> 362 <param name="rescale" value="--rescale"/>
401 </conditional> 363 </conditional>
402 </section> 364 </section>
403
404 <output_collection name="damage_visualisation" type="list"> 365 <output_collection name="damage_visualisation" type="list">
405 <element name="misincorporation" file="reference_misincorporation.txt" compare="diff" lines_diff="2"/> 366 <element name="misincorporation" file="reference_misincorporation.txt" compare="diff" lines_diff="2"/>
406 <element name="lgdistribution" file="reference_lgdistribution.txt" compare="diff" lines_diff="2"/> 367 <element name="lgdistribution" file="reference_lgdistribution.txt" compare="diff" lines_diff="2"/>
407 </output_collection> 368 </output_collection>
408
409 </test> 369 </test>
410
411 </tests> 370 </tests>
412 371
413 <help><![CDATA[ 372 <help><![CDATA[
414 **Overview**: 373 **Overview**:
415 374