diff filter.xml @ 0:a75e05f20a66 draft

"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/delly commit 86ada42b811af0262618636f2d8d1788274f9884"
author iuc
date Mon, 28 Sep 2020 07:44:40 +0000
parents
children 9919057a466c
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/filter.xml	Mon Sep 28 07:44:40 2020 +0000
@@ -0,0 +1,272 @@
+<?xml version="1.0"?>
+<tool id="delly_filter" name="Delly filter" version="@TOOL_VERSION@+galaxy0" profile="18.01">
+    <description>somatic or germline structural variants</description>
+    <macros>
+        <import>macros.xml</import>
+    </macros>
+    <expand macro="requirements"/>
+    <expand macro="version_command"/>
+    <command detect_errors="exit_code"><![CDATA[
+## initialize
+#if $samples.is_of_type('vcf')
+    bcftools view -Ob '$samples' > 'sample.bcf.gz' &&
+    bcftools index 'sample.bcf.gz' &&
+#else
+    ln -s '${samples}' 'sample.bcf.gz' &&
+    ln -s '${samples.metadata.bcf_index}' 'sample.bcf.gz.csi' &&
+#end if
+
+## run
+delly filter
+## generic options
+--filter $sv.mode_cond.mode_sel
+--outfile 'result.bcf'
+--altaf $generic.altaf
+--minsize $generic.minsize
+--maxsize $generic.maxsize
+--ratiogeno $generic.ratiogeno
+$generic.pass
+## somatic options
+#if $sv.mode_cond.mode_sel == 'somatic'
+    --samples '$sv.mode_cond.samples'
+    --coverage $sv.mode_cond.coverage
+    --controlcontamination $sv.mode_cond.controlcontamination
+#end if
+## germline options
+#if $sv.mode_cond.mode_sel == 'germline'
+    --gq $sv.mode_cond.gq
+    --rddel $sv.mode_cond.rddel
+    --rddup $sv.mode_cond.rddup
+#end if
+## samples
+'sample.bcf.gz' ## input
+
+## postprocessing
+#if 'log' in $oo.out
+    |& tee 'log.txt'
+#end if
+#if 'vcf' in $oo.out
+    && test -f 'result.bcf' && bcftools view 'result.bcf' > 'result.vcf' || echo 'No results.'
+#end if
+    ]]></command>
+    <inputs>
+        <expand macro="samples" format="bcf,vcf" multiple="false" label="Select file"/>
+        <section name="generic" title="Generic options" expanded="true">
+            <param argument="--altaf" type="float" value="0.2" min="0.0" max="1.0" label="Set minimum fractional ALT support"/>
+            <param argument="--minsize" type="integer" value="0" label="Set minimum SV size"/>
+            <param argument="--maxsize" type="integer" value="500000000" label="Set maximum SV size"/>
+            <param argument="--ratiogeno" type="float" value="0.75" min="0.0" max="1.0" label="Set minimum fraction of genotyped samples"/>
+            <param argument="--pass" type="boolean" truevalue="--pass" falsevalue="" label="Filter sites for PASS?"/>
+        </section>
+        <section name="sv" title="SV calling options" expanded="true">
+            <conditional name="mode_cond">
+                <param argument="mode_sel" type="select" label="Select filter mode">
+                    <option value="somatic" selected="true">Somatic</option>
+                    <option value="germline">Germline</option>
+                </param>
+                <when value="somatic">
+                    <param argument="--samples" type="data" format="tabular" label="Select sample file" help="Two-column sample file listing sample name and tumor or control."/>
+                    <param argument="--coverage" type="integer" value="10" label="Set minimum coverage in tumor."/>
+                    <param argument="--controlcontamination" type="float" value="0.0" min="0.0" max="1.0" label="Set maximum fractional ALT support in control"/>
+                </when>
+                <when value="germline">
+                    <param argument="--gq" type="integer" value="15" label="Set minimum median GQ for carriers and non-carriers"/>
+                    <param argument="--rddel" type="float" value="0.8" label="Set maximum read-depth ratio of carrier vs. non-carrier for a deletion"/>
+                    <param argument="--rddup" type="float" value="1.2" label="Set minimum read-depth ratio of carrier vs. non-carrier for a duplication"/>
+                </when>
+            </conditional>
+        </section>
+        <section name="oo" title="Output options">
+            <param name="out" type="select" multiple="true" optional="false" label="Select output file(s)">
+                <option value="bcf" selected="true">BCF</option>
+                <option value="vcf">VCF</option>
+                <option value="log">Log</option>
+            </param>
+        </section>
+    </inputs>
+    <outputs>
+        <expand macro="vcf"/>
+        <expand macro="bcf"/>
+        <expand macro="log"/>
+    </outputs>
+    <tests>
+        <!-- #1 default, somatic, bcf -->
+        <test expect_num_outputs="2">
+            <param name="samples" value="call_1.bcf.gz"/>
+            <section name="sv">
+                <conditional name="mode_cond">
+                    <param name="mode_sel" value="somatic"/>
+                    <param name="samples" value="samples.tsv"/>
+                </conditional>
+            </section>
+            <section name="oo">
+                <param name="out" value="vcf,bcf"/>
+            </section>
+            <output name="out_bcf">
+                <assert_contents>
+                    <has_size value="2281" delta="10"/>
+                </assert_contents>
+            </output>
+            <output name="out_vcf">
+                <assert_contents>
+                    <has_n_lines n="140"/>
+                    <has_line line="##fileformat=VCFv4.2"/>
+                    <has_line line="#CHROM&#009;POS&#009;ID&#009;REF&#009;ALT&#009;QUAL&#009;FILTER&#009;INFO&#009;FORMAT&#009;NORMAL&#009;TUMOR"/>
+                </assert_contents>
+            </output>
+        </test>
+        <!-- #2 somatic, bcf -->
+        <test expect_num_outputs="3">
+            <param name="samples" value="call_1.bcf.gz"/>
+            <section name="generic">
+                <param name="altaf" value="0.3"/>
+                <param name="minsize" value="1"/>
+                <param name="maxsize" value="500000001"/>
+                <param name="ratiogeno" value="0.76"/>
+                <param name="pass" value="true"/>
+            </section>
+            <section name="sv">
+                <conditional name="mode_cond">
+                    <param name="mode_sel" value="somatic"/>
+                    <param name="samples" value="samples.tsv"/>
+                    <param name="coverage" value="11"/>
+                    <param name="controlcontamination" value="0.1"/>
+                </conditional>
+            </section>
+            <section name="oo">
+                <param name="out" value="vcf,bcf,log"/>
+            </section>
+            <output name="out_bcf">
+                <assert_contents>
+                    <has_size value="2281" delta="10"/>
+                </assert_contents>
+            </output>
+            <output name="out_vcf">
+                <assert_contents>
+                    <has_n_lines n="140"/>
+                    <has_line line="##fileformat=VCFv4.2"/>
+                    <has_line line="#CHROM&#009;POS&#009;ID&#009;REF&#009;ALT&#009;QUAL&#009;FILTER&#009;INFO&#009;FORMAT&#009;NORMAL&#009;TUMOR"/>
+                </assert_contents>
+            </output>
+            <output name="out_log">
+                <assert_contents>
+                    <has_text_matching expression=".+Done\."/>
+                </assert_contents>
+            </output>
+        </test>
+       <!-- #3 default, germline, bcf -->
+        <test expect_num_outputs="2">
+            <param name="samples" value="call_1.bcf.gz"/>
+            <section name="sv">
+                <conditional name="mode_cond">
+                    <param name="mode_sel" value="germline"/>
+                </conditional>
+            </section>
+            <section name="oo">
+                <param name="out" value="vcf,bcf"/>
+            </section>
+            <output name="out_bcf">
+                <assert_contents>
+                    <has_size value="2264" delta="10"/>
+                </assert_contents>
+            </output>
+            <output name="out_vcf">
+                <assert_contents>
+                    <has_n_lines n="139"/>
+                    <has_line line="##fileformat=VCFv4.2"/>
+                    <has_line line="#CHROM&#009;POS&#009;ID&#009;REF&#009;ALT&#009;QUAL&#009;FILTER&#009;INFO&#009;FORMAT&#009;NORMAL&#009;TUMOR"/>
+                </assert_contents>
+            </output>
+        </test>
+        <!-- #4 germline, bcf -->
+        <test expect_num_outputs="3">
+            <param name="samples" value="call_1.bcf.gz"/>
+            <section name="generic">
+                <param name="altaf" value="0.1"/>
+                <param name="minsize" value="1"/>
+                <param name="maxsize" value="500000001"/>
+                <param name="ratiogeno" value="0.76"/>
+                <param name="pass" value="true"/>
+            </section>
+            <section name="sv">
+                <conditional name="mode_cond">
+                    <param name="mode_sel" value="germline"/>
+                    <param name="gq" value="14"/>
+                    <param name="rddel" value="0.7"/>
+                    <param name="rddup" value="1.3"/>
+                </conditional>
+            </section>
+            <section name="oo">
+                <param name="out" value="vcf,bcf,log"/>
+            </section>
+            <output name="out_bcf">
+                <assert_contents>
+                    <has_size value="2264" delta="10"/>
+                </assert_contents>
+            </output>
+            <output name="out_vcf">
+                <assert_contents>
+                    <has_n_lines n="139"/>
+                    <has_line line="##fileformat=VCFv4.2"/>
+                    <has_line line="#CHROM&#009;POS&#009;ID&#009;REF&#009;ALT&#009;QUAL&#009;FILTER&#009;INFO&#009;FORMAT&#009;NORMAL&#009;TUMOR"/>
+                </assert_contents>
+            </output>
+            <output name="out_log">
+                <assert_contents>
+                    <has_text_matching expression=".+Done\."/>
+                </assert_contents>
+            </output>
+        </test>
+        <!-- #5 default, somatic, vcf -->
+        <test expect_num_outputs="2">
+            <param name="samples" value="call_1.vcf.gz"/>
+            <section name="sv">
+                <conditional name="mode_cond">
+                    <param name="mode_sel" value="somatic"/>
+                    <param name="samples" value="samples.tsv"/>
+                </conditional>
+            </section>
+            <section name="oo">
+                <param name="out" value="vcf,bcf"/>
+            </section>
+            <output name="out_bcf">
+                <assert_contents>
+                    <has_size value="2440" delta="10"/>
+                </assert_contents>
+            </output>
+            <output name="out_vcf">
+                <assert_contents>
+                    <has_n_lines n="142"/>
+                    <has_line line="##fileformat=VCFv4.2"/>
+                    <has_line line="#CHROM&#009;POS&#009;ID&#009;REF&#009;ALT&#009;QUAL&#009;FILTER&#009;INFO&#009;FORMAT&#009;NORMAL&#009;TUMOR"/>
+                </assert_contents>
+            </output>
+        </test>
+    </tests>
+   <help><![CDATA[
+.. class:: infomark
+
+**What it does**
+
+@WID@
+
+Delly *filter* contains workflows for germline and somatic SV calling.
+
+**Input**
+
+*Somatic* filtering requires a called SV input with at least one tumor sample and a matched control sample. In addition, a tab-delimited sample description needs to be provided, in which the first column holds the sample ids (as found in the VCF/BCF input) and the second column specifies either tumor or control.
+
+*Germline* SV calling is done by sample for high-coverage genomes or in small batches for low-coverage genomes.
+
+**Output**
+
+The output is available in BCF and VCF format.
+
+.. class:: infomark
+
+**References**
+
+@REFERENCES@
+    ]]></help>
+    <expand macro="citations"/>
+</tool>
\ No newline at end of file