view homer_annotatePeaks.xml @ 3:fa7c3a74acf2 draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/homer commit 16a919905f336e34e237388c1921d0f4f8a368af
author iuc
date Thu, 06 Apr 2023 16:24:36 +0000
parents adab852c8216
children
line wrap: on
line source

<tool id="homer_annotatePeaks" name="annotatePeaks" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@PROFILE@">
    <macros>
        <import>macros.xml</import>
    </macros>
    <expand macro="requirements"/>
    <command detect_errors="exit_code"><![CDATA[
annotatePeaks.pl
## Peak file
'$input'
## Genome
#if $CpG.bool == "true":
    #if $CpG.genome.source == 'installed': 
        '${CpG.genome.all_fasta_source.fields.path}'
    #else
        '${CpG.genome.fasta}'
    #end if
    -CpG
#else
    none
#end if
#if $gtf_file:
    -gtf '$gtf_file'
#end if
#if $ann_file:
    -ann '$ann_file'
#end if
> '$output'
        ]]></command>
    <inputs>
        <param name="input" type="data" format="bed,encodepeak,tabular" label="Peak file"/>
        <!-- CpG -->
        <conditional name="CpG">
            <param name="bool" type="select" label="Do you want to compute CpG/GC content?">
                <option value="true">Yes</option>
                <option value="false">No</option>
            </param>
            <when value="true">
                <conditional name="genome">
                    <param name="source" type="select" label="Will you select a reference genome from your history or use a installed genome?">
                        <option value="installed">Installed</option>
                        <option value="history">From History</option>
                    </param>
                    <when value="installed">
                        <param name="all_fasta_source" type="select" label="Source FASTA Sequence">
                            <options from_data_table="all_fasta">
                                <filter type="sort_by" column="2"/>
                                <validator type="no_options" message="No references are available"/>
                            </options>
                        </param>
                    </when>
                    <when value="history">
                        <param name="fasta" type="data" format="fasta" label="Select reference genome"/>
                    </when>
                </conditional>
            </when>
            <when value="false"/>
        </conditional>
        <param name="gtf_file" type="data" format="gtf,gff,gff3" optional="True" label="GTF file" help="Must be of datatype &quot;gtf&quot; or &quot;gff&quot; or &quot;gff3&quot;" argument="-gtf"/>
        <param name="ann_file" type="data" format="tabular" optional="True" label="Annotation data file for HOMER" help="This file can be generated from gtf with the tool 'Converts GTF to Annotations file for Homer" argument="-ann"/>
    </inputs>
    <outputs>
        <data format="tabular" name="output"/>
    </outputs>
    <tests>
        <test expect_num_outputs="1">
            <!-- first simple test with ann and gtf-->
            <param name="input" value="CTCF_peaks.bed" ftype="bed"/>
            <conditional name="CpG">
                <param name="bool" value="false"/>
            </conditional>
            <param name="ann_file" value="annotations_default_simplified.txt" ftype="tabular"/>
            <param name="gtf_file" value="small_simplified.gtf" ftype="gtf"/>
            <output name="output" file="CTCF_peaks_first.txt" ftype="tabular" compare="diff" lines_diff="2"/>
        </test>
        <test expect_num_outputs="1">
            <!-- second simple test with ann only-->
            <param name="input" value="CTCF_peaks.bed" ftype="bed"/>
            <conditional name="CpG">
                <param name="bool" value="false"/>
            </conditional>
            <param name="ann_file" value="annotations_default.txt" ftype="tabular"/>
            <output name="output" file="CTCF_peaks_second.txt" ftype="tabular" compare="diff" lines_diff="2"/>
        </test>
        <test expect_num_outputs="1">
            <!-- third simple test with gtf only-->
            <param name="input" value="CTCF_peaks.bed" ftype="bed"/>
            <conditional name="CpG">
                <param name="bool" value="false"/>
            </conditional>
            <param name="gtf_file" value="small_simplified.gtf" ftype="gtf"/>
            <output name="output" file="CTCF_peaks_third.txt" ftype="tabular" compare="diff" lines_diff="2"/>
        </test>
        <test expect_num_outputs="1">
            <!--test with CpG-->
            <param name="input" value="fake_phix_peaks.bed"/>
            <conditional name="CpG">
                <param name="bool" value="true"/>
                <conditional name="genome">
                    <param name="source" value="history"/>
                    <param name="fasta" value="phiX174.fasta"/>
                </conditional>
            </conditional>
            <output name="output" file="phiXcpg.txt" ftype="tabular" compare="diff" lines_diff="2"/>
        </test>
        <test expect_num_outputs="1">
            <!--test with CpG from table-->
            <param name="input" value="fake_phix_peaks.bed"/>
            <conditional name="CpG">
                <param name="bool" value="true"/>
                <conditional name="genome">
                    <param name="source" value="installed"/>
                    <param name="all_fasta_source" value="phiX174"/>
                </conditional>
            </conditional>
            <output name="output" file="phiXcpg.txt" ftype="tabular" compare="diff" lines_diff="2"/>
        </test>
        <test expect_num_outputs="1">
            <!--test with nothing-->
            <param name="input" value="fake_phix_peaks.bed"/>
            <conditional name="CpG">
                <param name="bool" value="false"/>
            </conditional>
            <output name="output" file="phiX_nothing.txt" ftype="tabular" compare="diff" lines_diff="2"/>
        </test>
    </tests>
    <help><![CDATA[
This wrapper allow to annotate peaks with simple annotations with annotatePeaks.pl from HOMER.
The annotation file and the GTF file may seem redundant but:
- the use of gtf file only misses the UTR annotations and does not allow to set the desired offsets for TSS and TTS.
- the use of annotation file only misses the distance to tss and the correspondance between id and classical gene name.
        ]]></help>
    <expand macro="citation"/>
</tool>