diff PercolatorAdapter.xml @ 8:016964c597f5 draft

planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/openms commit 3d1e5f37fd16524a415f707772eeb7ead848c5e3
author galaxyp
date Thu, 01 Dec 2022 18:56:56 +0000
parents 147aaac03456
children 02796e3ddec1
line wrap: on
line diff
--- a/PercolatorAdapter.xml	Fri Nov 06 20:36:48 2020 +0000
+++ b/PercolatorAdapter.xml	Thu Dec 01 18:56:56 2022 +0000
@@ -1,13 +1,11 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <!--This is a configuration file for the integration of a tools into Galaxy (https://galaxyproject.org/). This file was automatically generated using CTDConverter.-->
 <!--Proposed Tool Section: [ID Processing]-->
-<tool id="PercolatorAdapter" name="PercolatorAdapter" version="@TOOL_VERSION@+galaxy@GALAXY_VERSION@" profile="20.05">
+<tool id="PercolatorAdapter" name="PercolatorAdapter" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="21.05">
   <description>Facilitate input to Percolator and reintegrate.</description>
   <macros>
     <token name="@EXECUTABLE@">PercolatorAdapter</token>
     <import>macros.xml</import>
-    <import>macros_autotest.xml</import>
-    <import>macros_test.xml</import>
   </macros>
   <expand macro="requirements"/>
   <expand macro="stdio"/>
@@ -16,13 +14,23 @@
 #import re
 
 ## Preprocessing
-#if $in:
-  mkdir in &&
-  ${ ' '.join(["ln -s '%s' 'in/%s.%s' &&" % (_, re.sub('[^\w\-_]', '_', _.element_identifier), $gxy2omsext(_.ext)) for _ in $in if _]) }
+#if $in_cond.in:
+  mkdir in_cond.in &&
+  #if $in_cond.in_select == "no"
+  mkdir ${' '.join(["'in_cond.in/%s'" % (i) for i, f in enumerate($in_cond.in) if f])} && 
+  ${' '.join(["ln -s '%s' 'in_cond.in/%s/%s.%s' && " % (f, i, re.sub('[^\w\-_]', '_', f.element_identifier), $gxy2omsext(f.ext)) for i, f in enumerate($in_cond.in) if f])}
+  #else
+  ln -s '$in_cond.in' 'in_cond.in/${re.sub("[^\w\-_]", "_", $in_cond.in.element_identifier)}.$gxy2omsext($in_cond.in.ext)' &&
+  #end if
 #end if
-#if $in_decoy:
-  mkdir in_decoy &&
-  ${ ' '.join(["ln -s '%s' 'in_decoy/%s.%s' &&" % (_, re.sub('[^\w\-_]', '_', _.element_identifier), $gxy2omsext(_.ext)) for _ in $in_decoy if _]) }
+#if $in_decoy_cond.in_decoy:
+  mkdir in_decoy_cond.in_decoy &&
+  #if $in_decoy_cond.in_decoy_select == "no"
+  mkdir ${' '.join(["'in_decoy_cond.in_decoy/%s'" % (i) for i, f in enumerate($in_decoy_cond.in_decoy) if f])} && 
+  ${' '.join(["ln -s '%s' 'in_decoy_cond.in_decoy/%s/%s.%s' && " % (f, i, re.sub('[^\w\-_]', '_', f.element_identifier), $gxy2omsext(f.ext)) for i, f in enumerate($in_decoy_cond.in_decoy) if f])}
+  #else
+  ln -s '$in_decoy_cond.in_decoy' 'in_decoy_cond.in_decoy/${re.sub("[^\w\-_]", "_", $in_decoy_cond.in_decoy.element_identifier)}.$gxy2omsext($in_decoy_cond.in_decoy.ext)' &&
+  #end if
 #end if
 #if $in_osw:
   mkdir in_osw &&
@@ -47,16 +55,14 @@
 #if "weights_FLAG" in str($OPTIONAL_OUTPUTS).split(',')
   mkdir weights &&
 #end if
-#if $adv_opts_cond.adv_opts_selector=='advanced':
-  #if $adv_opts_cond.init_weights:
-    mkdir adv_opts_cond.init_weights &&
-    ln -s '$adv_opts_cond.init_weights' 'adv_opts_cond.init_weights/${re.sub("[^\w\-_]", "_", $adv_opts_cond.init_weights.element_identifier)}.$gxy2omsext($adv_opts_cond.init_weights.ext)' &&
+  #if $adv_opts.init_weights:
+    mkdir adv_opts.init_weights &&
+    ln -s '$adv_opts.init_weights' 'adv_opts.init_weights/${re.sub("[^\w\-_]", "_", $adv_opts.init_weights.element_identifier)}.$gxy2omsext($adv_opts.init_weights.ext)' &&
   #end if
-  #if $adv_opts_cond.fasta:
-    mkdir adv_opts_cond.fasta &&
-    ln -s '$adv_opts_cond.fasta' 'adv_opts_cond.fasta/${re.sub("[^\w\-_]", "_", $adv_opts_cond.fasta.element_identifier)}.$gxy2omsext($adv_opts_cond.fasta.ext)' &&
+  #if $adv_opts.fasta:
+    mkdir adv_opts.fasta &&
+    ln -s '$adv_opts.fasta' 'adv_opts.fasta/${re.sub("[^\w\-_]", "_", $adv_opts.fasta.element_identifier)}.$gxy2omsext($adv_opts.fasta.ext)' &&
   #end if
-#end if
 
 ## Main program call
 
@@ -64,13 +70,21 @@
 @EXECUTABLE@ -write_ctd ./ &&
 python3 '$__tool_directory__/fill_ctd.py' '@EXECUTABLE@.ctd' '$args_json' '$hardcoded_json' &&
 @EXECUTABLE@ -ini @EXECUTABLE@.ctd
-#if $in:
+#if $in_cond.in:
   -in
-  ${' '.join(["'in/%s.%s'"%(re.sub('[^\w\-_]', '_', _.element_identifier), $gxy2omsext(_.ext)) for _ in $in if _])}
+  #if $in_cond.in_select == "no"
+  ${' '.join(["'in_cond.in/%s/%s.%s'"%(i, re.sub('[^\w\-_]', '_', f.element_identifier), $gxy2omsext(f.ext)) for i, f in enumerate($in_cond.in) if f])}
+  #else
+  'in_cond.in/${re.sub("[^\w\-_]", "_", $in_cond.in.element_identifier)}.$gxy2omsext($in_cond.in.ext)'
+  #end if
 #end if
-#if $in_decoy:
+#if $in_decoy_cond.in_decoy:
   -in_decoy
-  ${' '.join(["'in_decoy/%s.%s'"%(re.sub('[^\w\-_]', '_', _.element_identifier), $gxy2omsext(_.ext)) for _ in $in_decoy if _])}
+  #if $in_decoy_cond.in_decoy_select == "no"
+  ${' '.join(["'in_decoy_cond.in_decoy/%s/%s.%s'"%(i, re.sub('[^\w\-_]', '_', f.element_identifier), $gxy2omsext(f.ext)) for i, f in enumerate($in_decoy_cond.in_decoy) if f])}
+  #else
+  'in_decoy_cond.in_decoy/${re.sub("[^\w\-_]", "_", $in_decoy_cond.in_decoy.element_identifier)}.$gxy2omsext($in_decoy_cond.in_decoy.ext)'
+  #end if
 #end if
 #if $in_osw:
   -in_osw
@@ -102,16 +116,14 @@
   -weights
   'weights/output.${gxy2omsext("tabular")}'
 #end if
-#if $adv_opts_cond.adv_opts_selector=='advanced':
-  #if $adv_opts_cond.init_weights:
+  #if $adv_opts.init_weights:
     -init_weights
-    'adv_opts_cond.init_weights/${re.sub("[^\w\-_]", "_", $adv_opts_cond.init_weights.element_identifier)}.$gxy2omsext($adv_opts_cond.init_weights.ext)'
+    'adv_opts.init_weights/${re.sub("[^\w\-_]", "_", $adv_opts.init_weights.element_identifier)}.$gxy2omsext($adv_opts.init_weights.ext)'
   #end if
-  #if $adv_opts_cond.fasta:
+  #if $adv_opts.fasta:
     -fasta
-    'adv_opts_cond.fasta/${re.sub("[^\w\-_]", "_", $adv_opts_cond.fasta.element_identifier)}.$gxy2omsext($adv_opts_cond.fasta.ext)'
+    'adv_opts.fasta/${re.sub("[^\w\-_]", "_", $adv_opts.fasta.element_identifier)}.$gxy2omsext($adv_opts.fasta.ext)'
   #end if
-#end if
 #if len(str($OPTIONAL_OUTPUTS).split(',')) == 0
   | tee '$stdout'
 #end if
@@ -144,16 +156,38 @@
     <configfile name="hardcoded_json"><![CDATA[{"percolator_executable": "percolator", "log": "log.txt", "threads": "\${GALAXY_SLOTS:-1}", "no_progress": true}]]></configfile>
   </configfiles>
   <inputs>
-    <param name="in" argument="-in" type="data" format="idxml,mzid" multiple="true" optional="true" label="Input file(s)" help=" select idxml,mzid data sets(s)"/>
-    <param name="in_decoy" argument="-in_decoy" type="data" format="idxml,mzid" multiple="true" optional="true" label="Input decoy file(s) in case of separate searches" help=" select idxml,mzid data sets(s)"/>
-    <param name="in_osw" argument="-in_osw" type="data" format="osw" optional="true" label="Input file in OSW format" help=" select osw data sets(s)"/>
-    <param name="out_type" argument="-out_type" display="radio" type="select" optional="false" label="Output file type -- default: determined from file extension or content" help="">
+    <conditional name="in_cond">
+      <param name="in_select" type="select" label="Run tool in batch mode for -in">
+        <option value="no">No: process all datasets jointly</option>
+        <option value="yes">Yes: process each dataset in an independent job</option>
+      </param>
+      <when value="no">
+        <param argument="-in" type="data" format="idxml,mzid" multiple="true" optional="true" label="Input file(s)" help=" select idxml,mzid data sets(s)"/>
+      </when>
+      <when value="yes">
+        <param argument="-in" type="data" format="idxml,mzid" multiple="false" optional="true" label="Input file(s)" help=" select idxml,mzid data sets(s)"/>
+      </when>
+    </conditional>
+    <conditional name="in_decoy_cond">
+      <param name="in_decoy_select" type="select" label="Run tool in batch mode for -in_decoy">
+        <option value="no">No: process all datasets jointly</option>
+        <option value="yes">Yes: process each dataset in an independent job</option>
+      </param>
+      <when value="no">
+        <param argument="-in_decoy" type="data" format="idxml,mzid" multiple="true" optional="true" label="Input decoy file(s) in case of separate searches" help=" select idxml,mzid data sets(s)"/>
+      </when>
+      <when value="yes">
+        <param argument="-in_decoy" type="data" format="idxml,mzid" multiple="false" optional="true" label="Input decoy file(s) in case of separate searches" help=" select idxml,mzid data sets(s)"/>
+      </when>
+    </conditional>
+    <param argument="-in_osw" type="data" format="osw" optional="true" label="Input file in OSW format" help=" select osw data sets(s)"/>
+    <param argument="-out_type" display="radio" type="select" optional="false" label="Output file type -- default: determined from file extension or content" help="">
       <option value="idXML">idxml</option>
       <option value="mzid">mzid</option>
       <option value="osw">osw</option>
-      <expand macro="list_string_san"/>
+      <expand macro="list_string_san" name="out_type"/>
     </param>
-    <param name="enzyme" argument="-enzyme" type="select" optional="false" label="Type of enzyme: no_enzyme,elastase,pepsin,proteinasek,thermolysin,chymotrypsin,lys-n,lys-c,arg-c,asp-n,glu-c,trypsin,trypsinp" help="">
+    <param argument="-enzyme" type="select" optional="true" label="Type of enzyme: no_enzyme,elastase,pepsin,proteinasek,thermolysin,chymotrypsin,lys-n,lys-c,arg-c,asp-n,glu-c,trypsin,trypsinp" help="">
       <option value="no_enzyme">no_enzyme</option>
       <option value="elastase">elastase</option>
       <option value="pepsin">pepsin</option>
@@ -167,53 +201,56 @@
       <option value="glu-c">glu-c</option>
       <option value="trypsin" selected="true">trypsin</option>
       <option value="trypsinp">trypsinp</option>
-      <expand macro="list_string_san"/>
+      <expand macro="list_string_san" name="enzyme"/>
     </param>
-    <param name="peptide_level_fdrs" argument="-peptide_level_fdrs" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Calculate peptide-level FDRs instead of PSM-level FDRs" help=""/>
-    <param name="protein_level_fdrs" argument="-protein_level_fdrs" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Use the picked protein-level FDR to infer protein probabilities" help="Use the -fasta option and -decoy_pattern to set the Fasta file and decoy pattern"/>
-    <param name="osw_level" argument="-osw_level" type="text" optional="true" value="ms2" label="OSW: Either &quot;ms1&quot;, &quot;ms2&quot; or &quot;transition&quot;; the data level selected for scoring" help="">
-      <expand macro="list_string_san"/>
+    <param argument="-peptide_level_fdrs" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Calculate peptide-level FDRs instead of PSM-level FDRs" help=""/>
+    <param argument="-protein_level_fdrs" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Use the picked protein-level FDR to infer protein probabilities" help="Use the -fasta option and -decoy_pattern to set the Fasta file and decoy pattern"/>
+    <param argument="-osw_level" type="select" optional="true" label="OSW: the data level selected for scoring" help="">
+      <option value="ms1">ms1</option>
+      <option value="ms2" selected="true">ms2</option>
+      <option value="transition">transition</option>
+      <expand macro="list_string_san" name="osw_level"/>
     </param>
-    <param name="score_type" argument="-score_type" display="radio" type="select" optional="false" label="Type of the peptide main score" help="">
+    <param argument="-score_type" type="select" optional="true" label="Type of the peptide main score" help="">
       <option value="q-value" selected="true">q-value</option>
       <option value="pep">pep</option>
       <option value="svm">svm</option>
-      <expand macro="list_string_san"/>
+      <expand macro="list_string_san" name="score_type"/>
     </param>
     <expand macro="adv_opts_macro">
-      <param name="generic_feature_set" argument="-generic_feature_set" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Use only generic" help="(i.e. not search engine specific) features. Generating search engine specific features for common search engines by PSMFeatureExtractor will typically boost the identification rate significantly"/>
-      <param name="subset_max_train" argument="-subset_max_train" type="integer" optional="true" value="0" label="Only train an SVM on a subset of &lt;x&gt; PSMs, and use the resulting score vector to evaluate the other PSMs" help="Recommended when analyzing huge numbers (&gt;1 million) of PSMs. When set to 0, all PSMs are used for training as normal"/>
-      <param name="cpos" argument="-cpos" type="float" optional="true" value="0.0" label="Cpos, penalty for mistakes made on positive examples" help="Set by cross validation if not specified"/>
-      <param name="cneg" argument="-cneg" type="float" optional="true" value="0.0" label="Cneg, penalty for mistakes made on negative examples" help="Set by cross validation if not specified"/>
-      <param name="testFDR" argument="-testFDR" type="float" optional="true" value="0.01" label="False discovery rate threshold for evaluating best cross validation result and the reported end result" help=""/>
-      <param name="trainFDR" argument="-trainFDR" type="float" optional="true" value="0.01" label="False discovery rate threshold to define positive examples in training" help="Set to testFDR if 0"/>
-      <param name="maxiter" argument="-maxiter" type="integer" optional="true" value="10" label="Maximal number of iterations" help=""/>
-      <param name="nested_xval_bins" argument="-nested_xval_bins" type="integer" optional="true" value="1" label="Number of nested cross-validation bins in the 3 splits" help=""/>
-      <param name="quick_validation" argument="-quick_validation" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Quicker execution by reduced internal cross-validation" help=""/>
-      <param name="init_weights" argument="-init_weights" type="data" format="tabular" optional="true" label="Read initial weights to the given file" help=" select tabular data sets(s)"/>
-      <param name="static" argument="-static" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Use static model (requires init-weights parameter to be set)" help=""/>
-      <param name="default_direction" argument="-default_direction" type="text" optional="true" value="" label="The most informative feature given as the feature name, can be negated to indicate that a lower value is bette" help="">
-        <expand macro="list_string_san"/>
+      <param argument="-generic_feature_set" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Use only generic" help="(i.e. not search engine specific) features. Generating search engine specific features for common search engines by PSMFeatureExtractor will typically boost the identification rate significantly"/>
+      <param argument="-subset_max_train" type="integer" optional="true" value="0" label="Only train an SVM on a subset of &lt;x&gt; PSMs, and use the resulting score vector to evaluate the other PSMs" help="Recommended when analyzing huge numbers (&gt;1 million) of PSMs. When set to 0, all PSMs are used for training as normal"/>
+      <param argument="-cpos" type="float" optional="true" value="0.0" label="Cpos, penalty for mistakes made on positive examples" help="Set by cross validation if not specified"/>
+      <param argument="-cneg" type="float" optional="true" value="0.0" label="Cneg, penalty for mistakes made on negative examples" help="Set by cross validation if not specified"/>
+      <param argument="-testFDR" type="float" optional="true" value="0.01" label="False discovery rate threshold for evaluating best cross validation result and the reported end result" help=""/>
+      <param argument="-trainFDR" type="float" optional="true" value="0.01" label="False discovery rate threshold to define positive examples in training" help="Set to testFDR if 0"/>
+      <param argument="-maxiter" type="integer" optional="true" value="10" label="Maximal number of iterations" help=""/>
+      <param argument="-nested_xval_bins" type="integer" optional="true" value="1" label="Number of nested cross-validation bins in the 3 splits" help=""/>
+      <param argument="-quick_validation" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Quicker execution by reduced internal cross-validation" help=""/>
+      <param argument="-init_weights" type="data" format="tabular" optional="true" label="Read initial weights to the given file" help=" select tabular data sets(s)"/>
+      <param argument="-static" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Use static model (requires init-weights parameter to be set)" help=""/>
+      <param argument="-default_direction" type="text" optional="true" value="" label="The most informative feature given as the feature name, can be negated to indicate that a lower value is bette" help="">
+        <expand macro="list_string_san" name="default_direction"/>
       </param>
-      <param name="verbose" argument="-verbose" type="integer" optional="true" value="2" label="Set verbosity of output: 0=no processing info, 5=all" help=""/>
-      <param name="unitnorm" argument="-unitnorm" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Use unit normalization [0-1] instead of standard deviation normalization" help=""/>
-      <param name="test_each_iteration" argument="-test_each_iteration" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Measure performance on test set each iteration" help=""/>
-      <param name="override" argument="-override" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Override error check and do not fall back on default score vector in case of suspect score vecto" help=""/>
-      <param name="seed" argument="-seed" type="integer" optional="true" value="1" label="Setting seed of the random number generato" help=""/>
-      <param name="doc" argument="-doc" type="integer" optional="true" value="0" label="Include description of correct features" help=""/>
-      <param name="klammer" argument="-klammer" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Retention time features calculated as in Klammer et al" help="Only available if -doc is set"/>
-      <param name="fasta" argument="-fasta" type="data" format="fasta" optional="true" label="Provide the fasta file as the argument to this flag, which will be used for protein grouping based on an in-silico digest (only valid if option -protein_level_fdrs is active)" help=" select fasta data sets(s)"/>
-      <param name="decoy_pattern" argument="-decoy_pattern" type="text" optional="true" value="random" label="Define the text pattern to identify the decoy proteins and/or PSMs, set this up if the label that identifies the decoys in the database is not the default (Only valid if option -protein_level_fdrs is active)" help="">
-        <expand macro="list_string_san"/>
+      <param argument="-verbose" type="integer" optional="true" value="2" label="Set verbosity of output: 0=no processing info, 5=all" help=""/>
+      <param argument="-unitnorm" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Use unit normalization [0-1] instead of standard deviation normalization" help=""/>
+      <param argument="-test_each_iteration" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Measure performance on test set each iteration" help=""/>
+      <param argument="-override" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Override error check and do not fall back on default score vector in case of suspect score vecto" help=""/>
+      <param argument="-seed" type="integer" optional="true" value="1" label="Setting seed of the random number generato" help=""/>
+      <param argument="-doc" type="integer" optional="true" value="0" label="Include description of correct features" help=""/>
+      <param argument="-klammer" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Retention time features calculated as in Klammer et al" help="Only available if -doc is set"/>
+      <param argument="-fasta" type="data" format="fasta" optional="true" label="Provide the fasta file as the argument to this flag, which will be used for protein grouping based on an in-silico digest (only valid if option -protein_level_fdrs is active)" help=" select fasta data sets(s)"/>
+      <param argument="-decoy_pattern" type="text" optional="true" value="random" label="Define the text pattern to identify the decoy proteins and/or PSMs, set this up if the label that identifies the decoys in the database is not the default (Only valid if option -protein_level_fdrs is active)" help="">
+        <expand macro="list_string_san" name="decoy_pattern"/>
       </param>
-      <param name="post_processing_tdc" argument="-post_processing_tdc" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Use target-decoy competition to assign q-values and PEPs" help=""/>
-      <param name="train_best_positive" argument="-train_best_positive" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Enforce that, for each spectrum, at most one PSM is included in the positive set during each training iteration" help="If the user only provides one PSM per spectrum, this filter will have no effect"/>
-      <param name="ipf_max_peakgroup_pep" argument="-ipf_max_peakgroup_pep" type="float" optional="true" value="0.7" label="OSW/IPF: Assess transitions only for candidate peak groups until maximum posterior error probability" help=""/>
-      <param name="ipf_max_transition_isotope_overlap" argument="-ipf_max_transition_isotope_overlap" type="float" optional="true" value="0.5" label="OSW/IPF: Maximum isotope overlap to consider transitions in IPF" help=""/>
-      <param name="ipf_min_transition_sn" argument="-ipf_min_transition_sn" type="float" optional="true" value="0.0" label="OSW/IPF: Minimum log signal-to-noise level to consider transitions in IPF" help="Set -1 to disable this filter"/>
-      <param name="force" argument="-force" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Overrides tool-specific checks" help=""/>
-      <param name="test" argument="-test" type="hidden" optional="true" value="False" label="Enables the test mode (needed for internal use only)" help="">
-        <expand macro="list_string_san"/>
+      <param argument="-post_processing_tdc" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Use target-decoy competition to assign q-values and PEPs" help=""/>
+      <param argument="-train_best_positive" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Enforce that, for each spectrum, at most one PSM is included in the positive set during each training iteration" help="If the user only provides one PSM per spectrum, this filter will have no effect"/>
+      <param argument="-ipf_max_peakgroup_pep" type="float" optional="true" value="0.7" label="OSW/IPF: Assess transitions only for candidate peak groups until maximum posterior error probability" help=""/>
+      <param argument="-ipf_max_transition_isotope_overlap" type="float" optional="true" value="0.5" label="OSW/IPF: Maximum isotope overlap to consider transitions in IPF" help=""/>
+      <param argument="-ipf_min_transition_sn" type="float" optional="true" value="0.0" label="OSW/IPF: Minimum log signal-to-noise level to consider transitions in IPF" help="Set -1 to disable this filter"/>
+      <param argument="-force" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Overrides tool-specific checks" help=""/>
+      <param argument="-test" type="hidden" optional="true" value="False" label="Enables the test mode (needed for internal use only)" help="">
+        <expand macro="list_string_san" name="test"/>
       </param>
     </expand>
     <param name="OPTIONAL_OUTPUTS" type="select" optional="true" multiple="true" label="Optional outputs">
@@ -227,9 +264,8 @@
     </param>
   </inputs>
   <outputs>
-    <data name="out" label="${tool.name} on ${on_string}: out">
+    <data name="out" label="${tool.name} on ${on_string}: out" format="idxml">
       <change_format>
-        <when input="out_type" value="idXML" format="idxml"/>
         <when input="out_type" value="mzid" format="mzid"/>
         <when input="out_type" value="osw" format="osw"/>
       </change_format>
@@ -256,13 +292,240 @@
       <filter>OPTIONAL_OUTPUTS is not None and "ctd_out_FLAG" in OPTIONAL_OUTPUTS</filter>
     </data>
   </outputs>
-  <tests>
-    <expand macro="autotest_PercolatorAdapter"/>
-    <expand macro="manutest_PercolatorAdapter"/>
+  <tests><!-- TOPP_PercolatorAdapter_1 -->
+    <test expect_num_outputs="2">
+      <section name="adv_opts">
+        <param name="generic_feature_set" value="false"/>
+        <param name="subset_max_train" value="0"/>
+        <param name="cpos" value="0.0"/>
+        <param name="cneg" value="0.0"/>
+        <param name="testFDR" value="0.5"/>
+        <param name="trainFDR" value="0.5"/>
+        <param name="maxiter" value="10"/>
+        <param name="nested_xval_bins" value="1"/>
+        <param name="quick_validation" value="false"/>
+        <param name="static" value="false"/>
+        <param name="default_direction" value=""/>
+        <param name="verbose" value="2"/>
+        <param name="unitnorm" value="false"/>
+        <param name="test_each_iteration" value="false"/>
+        <param name="override" value="false"/>
+        <param name="seed" value="1"/>
+        <param name="doc" value="0"/>
+        <param name="klammer" value="false"/>
+        <param name="decoy_pattern" value="random"/>
+        <param name="post_processing_tdc" value="false"/>
+        <param name="train_best_positive" value="false"/>
+        <param name="ipf_max_peakgroup_pep" value="0.7"/>
+        <param name="ipf_max_transition_isotope_overlap" value="0.5"/>
+        <param name="ipf_min_transition_sn" value="0.0"/>
+        <param name="force" value="false"/>
+        <param name="test" value="true"/>
+      </section>
+      <conditional name="in_cond">
+        <param name="in" value="PercolatorAdapter_1.idXML"/>
+      </conditional>
+      <output name="out" file="PercolatorAdapter_1_out.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
+      <param name="out_type" value="idXML"/>
+      <param name="enzyme" value="trypsin"/>
+      <param name="peptide_level_fdrs" value="false"/>
+      <param name="protein_level_fdrs" value="false"/>
+      <param name="osw_level" value="ms2"/>
+      <param name="score_type" value="q-value"/>
+      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>
+      <output name="ctd_out" ftype="xml">
+        <assert_contents>
+          <is_valid_xml/>
+        </assert_contents>
+      </output>
+    </test>
+    <!-- TOPP_PercolatorAdapter_2 -->
+    <test expect_num_outputs="2">
+      <section name="adv_opts">
+        <param name="generic_feature_set" value="false"/>
+        <param name="subset_max_train" value="0"/>
+        <param name="cpos" value="0.0"/>
+        <param name="cneg" value="0.0"/>
+        <param name="testFDR" value="0.01"/>
+        <param name="trainFDR" value="0.01"/>
+        <param name="maxiter" value="10"/>
+        <param name="nested_xval_bins" value="1"/>
+        <param name="quick_validation" value="false"/>
+        <param name="static" value="false"/>
+        <param name="default_direction" value=""/>
+        <param name="verbose" value="2"/>
+        <param name="unitnorm" value="false"/>
+        <param name="test_each_iteration" value="false"/>
+        <param name="override" value="false"/>
+        <param name="seed" value="1"/>
+        <param name="doc" value="0"/>
+        <param name="klammer" value="false"/>
+        <param name="decoy_pattern" value="random"/>
+        <param name="post_processing_tdc" value="false"/>
+        <param name="train_best_positive" value="false"/>
+        <param name="ipf_max_peakgroup_pep" value="0.7"/>
+        <param name="ipf_max_transition_isotope_overlap" value="0.5"/>
+        <param name="ipf_min_transition_sn" value="0.0"/>
+        <param name="force" value="false"/>
+        <param name="test" value="true"/>
+      </section>
+      <param name="in_osw" value="PercolatorAdapter_2.osw"/>
+      <output name="out" file="PercolatorAdapter_2_out1.osw" compare="sim_size" delta_frac="0.7" ftype="osw"/>
+      <param name="out_type" value="osw"/>
+      <param name="enzyme" value="trypsin"/>
+      <param name="peptide_level_fdrs" value="false"/>
+      <param name="protein_level_fdrs" value="false"/>
+      <param name="osw_level" value="ms1"/>
+      <param name="score_type" value="q-value"/>
+      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>
+      <output name="ctd_out" ftype="xml">
+        <assert_contents>
+          <is_valid_xml/>
+        </assert_contents>
+      </output>
+    </test>
+    <!-- TOPP_PercolatorAdapter_3 -->
+    <test expect_num_outputs="2">
+      <section name="adv_opts">
+        <param name="generic_feature_set" value="false"/>
+        <param name="subset_max_train" value="0"/>
+        <param name="cpos" value="0.0"/>
+        <param name="cneg" value="0.0"/>
+        <param name="testFDR" value="0.01"/>
+        <param name="trainFDR" value="0.01"/>
+        <param name="maxiter" value="10"/>
+        <param name="nested_xval_bins" value="1"/>
+        <param name="quick_validation" value="false"/>
+        <param name="static" value="false"/>
+        <param name="default_direction" value=""/>
+        <param name="verbose" value="2"/>
+        <param name="unitnorm" value="false"/>
+        <param name="test_each_iteration" value="false"/>
+        <param name="override" value="false"/>
+        <param name="seed" value="1"/>
+        <param name="doc" value="0"/>
+        <param name="klammer" value="false"/>
+        <param name="decoy_pattern" value="random"/>
+        <param name="post_processing_tdc" value="false"/>
+        <param name="train_best_positive" value="false"/>
+        <param name="ipf_max_peakgroup_pep" value="0.7"/>
+        <param name="ipf_max_transition_isotope_overlap" value="0.5"/>
+        <param name="ipf_min_transition_sn" value="0.0"/>
+        <param name="force" value="false"/>
+        <param name="test" value="true"/>
+      </section>
+      <param name="in_osw" value="PercolatorAdapter_2_out1.osw"/>
+      <output name="out" file="PercolatorAdapter_3_out1.osw" compare="sim_size" delta_frac="0.7" ftype="osw"/>
+      <param name="out_type" value="osw"/>
+      <param name="enzyme" value="trypsin"/>
+      <param name="peptide_level_fdrs" value="false"/>
+      <param name="protein_level_fdrs" value="false"/>
+      <param name="osw_level" value="ms2"/>
+      <param name="score_type" value="q-value"/>
+      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>
+      <output name="ctd_out" ftype="xml">
+        <assert_contents>
+          <is_valid_xml/>
+        </assert_contents>
+      </output>
+    </test>
+    <!-- TOPP_PercolatorAdapter_4 -->
+    <test expect_num_outputs="2">
+      <section name="adv_opts">
+        <param name="generic_feature_set" value="false"/>
+        <param name="subset_max_train" value="0"/>
+        <param name="cpos" value="0.0"/>
+        <param name="cneg" value="0.0"/>
+        <param name="testFDR" value="0.01"/>
+        <param name="trainFDR" value="0.01"/>
+        <param name="maxiter" value="10"/>
+        <param name="nested_xval_bins" value="1"/>
+        <param name="quick_validation" value="false"/>
+        <param name="static" value="false"/>
+        <param name="default_direction" value=""/>
+        <param name="verbose" value="2"/>
+        <param name="unitnorm" value="false"/>
+        <param name="test_each_iteration" value="false"/>
+        <param name="override" value="false"/>
+        <param name="seed" value="1"/>
+        <param name="doc" value="0"/>
+        <param name="klammer" value="false"/>
+        <param name="decoy_pattern" value="random"/>
+        <param name="post_processing_tdc" value="false"/>
+        <param name="train_best_positive" value="false"/>
+        <param name="ipf_max_peakgroup_pep" value="0.7"/>
+        <param name="ipf_max_transition_isotope_overlap" value="0.5"/>
+        <param name="ipf_min_transition_sn" value="0.0"/>
+        <param name="force" value="false"/>
+        <param name="test" value="true"/>
+      </section>
+      <param name="in_osw" value="PercolatorAdapter_3_out1.osw"/>
+      <output name="out" file="PercolatorAdapter_4_out1.osw" compare="sim_size" delta_frac="0.7" ftype="osw"/>
+      <param name="out_type" value="osw"/>
+      <param name="enzyme" value="trypsin"/>
+      <param name="peptide_level_fdrs" value="false"/>
+      <param name="protein_level_fdrs" value="false"/>
+      <param name="osw_level" value="transition"/>
+      <param name="score_type" value="q-value"/>
+      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>
+      <output name="ctd_out" ftype="xml">
+        <assert_contents>
+          <is_valid_xml/>
+        </assert_contents>
+      </output>
+    </test>
+    <!-- TOPP_PercolatorAdapter_5 -->
+    <test expect_num_outputs="3">
+      <section name="adv_opts">
+        <param name="generic_feature_set" value="false"/>
+        <param name="subset_max_train" value="0"/>
+        <param name="cpos" value="0.0"/>
+        <param name="cneg" value="0.0"/>
+        <param name="testFDR" value="0.5"/>
+        <param name="trainFDR" value="0.5"/>
+        <param name="maxiter" value="10"/>
+        <param name="nested_xval_bins" value="1"/>
+        <param name="quick_validation" value="false"/>
+        <param name="static" value="false"/>
+        <param name="default_direction" value=""/>
+        <param name="verbose" value="2"/>
+        <param name="unitnorm" value="false"/>
+        <param name="test_each_iteration" value="false"/>
+        <param name="override" value="false"/>
+        <param name="seed" value="1"/>
+        <param name="doc" value="0"/>
+        <param name="klammer" value="false"/>
+        <param name="decoy_pattern" value="random"/>
+        <param name="post_processing_tdc" value="false"/>
+        <param name="train_best_positive" value="false"/>
+        <param name="ipf_max_peakgroup_pep" value="0.7"/>
+        <param name="ipf_max_transition_isotope_overlap" value="0.5"/>
+        <param name="ipf_min_transition_sn" value="0.0"/>
+        <param name="force" value="false"/>
+        <param name="test" value="true"/>
+      </section>
+      <conditional name="in_cond">
+        <param name="in" value="PercolatorAdapter_1.idXML"/>
+      </conditional>
+      <output name="out" file="PercolatorAdapter_1_out.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
+      <output name="out_pin" file="PercolatorAdapter_1_out1.tsv" compare="sim_size" delta_frac="0.7" ftype="tabular"/>
+      <param name="out_type" value="idXML"/>
+      <param name="enzyme" value="trypsin"/>
+      <param name="peptide_level_fdrs" value="false"/>
+      <param name="protein_level_fdrs" value="false"/>
+      <param name="osw_level" value="ms2"/>
+      <param name="score_type" value="q-value"/>
+      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG,out_pin_FLAG"/>
+      <output name="ctd_out" ftype="xml">
+        <assert_contents>
+          <is_valid_xml/>
+        </assert_contents>
+      </output>
+    </test>
   </tests>
   <help><![CDATA[Facilitate input to Percolator and reintegrate.
 
 
-For more information, visit http://www.openms.de/doxygen/release/2.6.0/html/TOPP_PercolatorAdapter.html]]></help>
+For more information, visit http://www.openms.de/doxygen/release/2.8.0/html/TOPP_PercolatorAdapter.html]]></help>
   <expand macro="references"/>
 </tool>