view mafCoverage.xml @ 0:2b1884fdb849 draft default tip

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/ucsc_tools/maftools commit fe43201294560762b7aab73785df2f1f7828cb9e
author iuc
date Thu, 14 Aug 2025 11:59:27 +0000
parents
children
line wrap: on
line source

<tool id="ucsc_mafcoverage" name="mafCoverage" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@PROFILE@" license="MIT">
    <description>Analyse coverage by MAF files</description>
    <macros>
        <token name="@TOOL_VERSION@">482</token>
        <token name="@VERSION_SUFFIX@">0</token>
        <token name="@PROFILE@">24.2</token>
    </macros>
    <requirements>
        <requirement type="package" version="@TOOL_VERSION@">ucsc-mafcoverage</requirement>
    </requirements>
    <command detect_errors="exit_code">
        <![CDATA[
        cp '$ucsc_db_connection' "\${HOME}/.hg.conf" &&
        chmod 600 "\${HOME}/.hg.conf" &&
        mafCoverage 
        '$genome'
        '$maf_file'
        #if $restrict_option.restrict_select == "yes":
            -restrict='$restrict_option.restrict_bed'
        #end if
        #if $count != "":
            -count=$count
        #end if
        > coverage.txt
        ]]>
    </command>
    <configfiles>
        <configfile name="ucsc_db_connection"><![CDATA[
#European MariaDB server
db.host=genome-euro-mysql.soe.ucsc.edu
db.user=genomep
db.password=password
central.db=hgcentral
central.host=genome-euro-mysql.soe.ucsc.edu
central.user=genomep
central.password=password
gbdbLoc1=http://hgdownload.soe.ucsc.edu/gbdb/
forceTwoBit=on 
        ]]></configfile>
    </configfiles>
    <inputs>
        <param name="maf_file" type="data" format="maf" label="Input MAF file" help="Input MAF file for which coverage needs to be analysed. MAF file must be sorted by chromosome, tStart"/>
        <param name="genome" type="text" optional="false" label="Enter Genome database name" help="Name should match with the UCSC Table Browser Entries (For Eg. mm10, hg19, hg38)"/>
        <conditional name="restrict_option">
            <param name="restrict_select" type="select" label="Restrict to a specific parts of input BED file" help="Restrict the MAF coverage to a specific part of the input BED file. If not selected, the entire BED file will be used.">
                <option value="no">No</option>
                <option value="yes">Yes</option>
            </param>
            <when value="yes">
                <param name="restrict_bed" type="data" format="bed" label="Restrict BED file" help="Select a BED file to restrict the MAF coverage to specific regions."/>
            </when>
            <when value="no"/>
        </conditional>
        <param name="count" type="integer" value="" optional="true" label="Number of matching species to count coverage" help="Number of species to count coverage for. Default is 3"/>
    </inputs>
    <outputs>
        <data name="output" format="txt" from_work_dir="coverage.txt" label="${tool.name} on ${on_string}:Output Coverage"/>
    </outputs>
    <tests>
        <!-- Test 01: Testing with default options -->
        <test expect_num_outputs="1">
            <param name="maf_file" value="mafFetch.maf"/>
            <param name="genome" value="hg19"/>
            <conditional name="restrict_option">
                <param name="restrict_select" value="no"/>
            </conditional>
            <output name="output" ftype="txt">
                <assert_contents>
                    <has_n_lines n="16"/>
                    <has_text_matching expression="all\t330\t0.00\t170\t0.00\t25\t0.00\t145\t0.00"/>
                    <has_text_matching expression="chr13\t214\t0.00\t101\t0.00\t17\t0.00\t84\t0.00"/>
                    <has_text_matching expression="chr17\t116\t0.00\t69\t0.00\t8\t0.00\t61\t0.00"/>
                </assert_contents>
            </output>
        </test>

        <!-- Test 02: Testing -count option -->
        <test expect_num_outputs="1">
            <param name="maf_file" value="mafFetch.maf"/>
            <param name="genome" value="hg19"/>
            <conditional name="restrict_option">
                <param name="restrict_select" value="no"/>
            </conditional>
            <param name="count" value="2"/>
            <output name="output" ftype="txt">
                <assert_contents>
                    <has_n_lines n="16"/>
                    <has_text_matching expression="all\t330\t0.00\t170\t0.00\t25\t0.00\t145\t0.00"/>
                    <has_text_matching expression="chr13\t214\t0.00\t101\t0.00\t17\t0.00\t84\t0.00"/>
                    <has_text_matching expression="chr17\t116\t0.00\t69\t0.00\t8\t0.00\t61\t0.00"/>
                </assert_contents>
            </output>
        </test>

        <!-- Test 03: Testing with restrict option -->
        <test expect_num_outputs="1">
            <param name="maf_file" value="mafFetch.maf"/>
            <param name="genome" value="hg19"/>
            <conditional name="restrict_option">
                <param name="restrict_select" value="yes"/>
                <param name="restrict_bed" value="restrict.bed"/>
            </conditional>
            <param name="count" value="3"/>
            <output name="output" ftype="txt">
                <assert_contents>
                    <has_n_lines n="17"/>
                    <has_text_matching expression="all\t207\t94.09\t78\t35.45\t6\t2.73\t72\t32.73"/>
                    <has_text_matching expression="chr13\t107\t89.17\t16\t13.33\t0\t0.00\t16\t13.33"/>
                    <has_text_matching expression="chr17\t100\t100.00\t62\t62.00\t6\t6.00\t56\t56.00"/>
                </assert_contents>
            </output>
        </test>
    </tests>
    <help><![CDATA[

mafCoverage is a command-line tool from the UCSC Genome Browser suite that analyses the coverage by MAF files chromosome by chromosome and genome-wide. 

    ]]></help>
        <citations>
            <citation type="bibtex">
                @misc{mafCoverage,
                author = {Kent UCSC},
                title = {mafCoverage: A tool for analysing coverage by MAF files chromosome by chromosome and genome-wide},
                note = {Tool for analysing coverage by MAF files chromosome by chromosome and genome-wide}
            </citation>
    </citations>
    <creator>
        <person givenName="Saim" familyName="Momin" url="https://github.com/SaimMomin12" identifier="https://orcid.org/0009-0003-9935-828X"/>
        <organization name="Galaxy Europe" url="https://galaxyproject.org/eu/"/>
    </creator>
</tool>