view classify.xml @ 0:d3bc6ec7881f draft

"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/delly commit d18d984264f54b45e94d97b5b97ed499a32a334a"
author iuc
date Fri, 22 Jan 2021 14:33:05 +0000
parents
children d31211a43b19
line wrap: on
line source

<?xml version="1.0"?>
<tool id="delly_classify" name="Delly classify" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="18.01">
    <description>somatic or germline copy-number variants</description>
    <macros>
        <import>macros.xml</import>
    </macros>
    <expand macro="requirements"/>
    <expand macro="version_command"/>
    <command detect_errors="exit_code"><![CDATA[
## initialize
#if $input.is_of_type('vcf')
    bcftools view -Ob '$input' > 'input.bcf.gz' &&
    bcftools index 'input.bcf.gz' &&
#else
    ln -s '${input}' 'input.bcf.gz' &&
    ln -s '${input.metadata.bcf_index}' 'input.bcf.gz.csi' &&
#end if

## run
delly classify
## generic options
--filter $sv.mode_cond.mode_sel
--outfile 'result.bcf'
--minsize $generic.minsize
--maxsize $generic.maxsize
$generic.pass
## somatic options
#if $sv.mode_cond.mode_sel == 'somatic'
    --samples '$sv.mode_cond.samples'
    --pgerm $sv.mode_cond.pgerm
    --cn-offset $sv.mode_cond.cnoffset
## germline options
#else if $sv.mode_cond.mode_sel == 'germline'
    --ploidy $sv.mode_cond.ploidy
    --qual $sv.mode_cond.qual
    --maxsd $sv.mode_cond.maxsd
#end if
## input
'input.bcf.gz'

## postprocessing
@LOG@
@VCF@
    ]]></command>
    <inputs>
        <expand macro="input" format="bcf,vcf" label="Select input file"/>
        <section name="generic" title="Generic options" expanded="true">
            <expand macro="minsize" default="1000" label="Set minimum CNV size"/>
            <expand macro="maxsize" default="500000000" label="Set maximum CNV size"/>
            <expand macro="pass"/>
        </section>
        <section name="sv" title="SV calling options" expanded="true">
            <conditional name="mode_cond">
                <param name="mode_sel" type="select" label="Select filter mode" help="(--filter)">
                    <option value="somatic" selected="true">Somatic</option>
                    <option value="germline">Germline</option>
                </param>
                <when value="somatic">
                    <expand macro="samples"/>
                    <param argument="--pgerm" type="float" value="0.05" label="Set probability germline"/>
                    <expand macro="cnoffset" default="0.2"/>
                </when>
                <when value="germline">
                    <expand macro="ploidy"/>
                    <param argument="--qual" type="integer" value="50" label="Set minimum site quality"/>
                    <param argument="--maxsd" type="float" value="0.15" label="Set maximum population SD"/>
                </when>
            </conditional>
        </section>
        <section name="oo" title="Output options" expanded="true">
            <param name="out" type="select" multiple="true" optional="false" label="Select output file(s)">
                <option value="bcf" selected="true">BCF</option>
                <option value="log">Log</option>
                <option value="vcf">VCF</option>
            </param>
        </section>
    </inputs>
    <outputs>
        <expand macro="bcf"/>
        <expand macro="log"/>
        <expand macro="vcf"/>
    </outputs>
    <tests>
        <!-- #1 somatic, default -->
        <test expect_num_outputs="3">
            <param name="input" 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="bcf,vcf,log"/>
            </section>
            <output name="out_bcf">
                <assert_contents>
                    <has_size value="2322"/>
                </assert_contents>
            </output>
            <output name="out_log">
                <assert_contents>
                    <has_text_matching expression=".+Done.+"/>
                </assert_contents>
            </output>
            <output name="out_vcf">
                <assert_contents>
                    <has_size value="7762"/>
                </assert_contents>
            </output>
        </test>
        <!-- #2 somatic -->
        <test expect_num_outputs="3">
            <param name="input" value="call_1.bcf.gz"/>
            <section name="generic">
                <param name="minsize" value="1001"/>
                <param name="maxsize" value="500000001"/>
                <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="pgerm" value="0.04"/>
                    <param name="cnoffset" value="0.19"/>
                </conditional>
            </section>
            <section name="oo">
                <param name="out" value="bcf,vcf,log"/>
            </section>
            <output name="out_bcf">
                <assert_contents>
                    <has_size value="2322"/>
                </assert_contents>
            </output>
            <output name="out_log">
                <assert_contents>
                    <has_text_matching expression=".+Done.+"/>
                </assert_contents>
            </output>
            <output name="out_vcf">
                <assert_contents>
                    <has_size value="7762"/>
                </assert_contents>
            </output>
        </test>
        <!-- #3 germline, default -->
        <test expect_num_outputs="3">
            <param name="input" 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="bcf,vcf,log"/>
            </section>
            <output name="out_bcf">
                <assert_contents>
                    <has_size value="2270"/>
                </assert_contents>
            </output>
            <output name="out_log">
                <assert_contents>
                    <has_text_matching expression=".+Done.+"/>
                </assert_contents>
            </output>
            <output name="out_vcf">
                <assert_contents>
                    <has_size value="7665"/>
                </assert_contents>
            </output>
        </test>
        <!-- #4 germline -->
        <test expect_num_outputs="3">
            <param name="input" value="call_1.bcf.gz"/>
            <section name="sv">
                <conditional name="mode_cond">
                    <param name="mode_sel" value="germline"/>
                    <param name="ploidy" value="1"/>
                    <param name="qual" value="51"/>
                    <param name="maxsd" value="0.16"/>
                </conditional>
            </section>
            <section name="oo">
                <param name="out" value="bcf,vcf,log"/>
            </section>
            <output name="out_bcf">
                <assert_contents>
                    <has_size value="2270"/>
                </assert_contents>
            </output>
            <output name="out_log">
                <assert_contents>
                    <has_text_matching expression=".+Done.+"/>
                </assert_contents>
            </output>
            <output name="out_vcf">
                <assert_contents>
                    <has_size value="7665"/>
                </assert_contents>
            </output>
        </test>
    </tests>
    <help><![CDATA[
.. class:: infomark

**What it does**

@WID@

Delly *classify* for somatic or germline copy-number variants.

**Input**

Delly *classify* requires an input file in BCF format that can be generated with e.g. Delly *merge*. Additionally a tab-delimited sample description file is required where the first column is the sample id (as in the VCF/BCF file) and the second column is either tumor or control.

**Output**

The output is available in BCF and VCF format. Additionally a log file is provided.

.. class:: infomark

**References**

@REFERENCES@
    ]]></help>
    <expand macro="citations"/>
</tool>