diff fragpipe.xml @ 7:b4f6df8fa89b draft

planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/fragpipe commit 9d8b2338a6a513124bc58223637ee4c5813e0bb4
author galaxyp
date Wed, 01 Oct 2025 22:20:54 +0000
parents 59fec1e2a6c3
children 1455d3e7f191
line wrap: on
line diff
--- a/fragpipe.xml	Sun Mar 30 23:00:45 2025 +0000
+++ b/fragpipe.xml	Wed Oct 01 22:20:54 2025 +0000
@@ -1,4 +1,4 @@
-<tool id="fragpipe" name="FragPipe -  Academic Research and Education User License (Non-Commercial)" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="20.05">
+<tool id="fragpipe" name="FragPipe -  Academic Research and Education User License (Non-Commercial)" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="24.2">
     <description>Data analysis for mass spectrometry-based proteomics</description>
     <macros>
         <import>macros.xml</import>
@@ -12,8 +12,9 @@
                level="fatal"
                description="A FragPipe pipeline process returned non-zero exit code."/>
     </stdio>
-
-    <version_command>fragpipe --help | grep 'FragPipe v'</version_command>
+    <version_command>
+        fragpipe --msfragger_key @MSFRAGGER_ACADEMIC_USE_KEY@ --ionquant_key @IONQUANT_ACADEMIC_USE_KEY@ --help | grep 'FragPipe v'
+    </version_command>
 
     <!--
         FragPipe wrapper command:
@@ -32,19 +33,24 @@
             @PREPARE_INPUTS@
             @PREPARE_DATABASE@
 
+            mkdir tools &&
+            ln -s \${env_location}/share/diatracer-*/diaTracer-*/diaTracer-*.jar tools/ &&
+            ln -s \${env_location}/share/ionquant-*/IonQuant-*/IonQuant-*.jar tools/ &&
+            ln -s \${env_location}/share/msfragger-*/MSFragger-*/MSFragger-*.jar tools/ &&
+            ln -s \${env_location}/share/msfragger-*/MSFragger-*/ext tools/ &&
+
             ## Run FragPipe
             '$__tool_directory__/fragpipe'
-                --msfragger_key f28c4be2-759b0a11-6c1ea652-1240565a
-                --ionquant_key 47cb2953-b4bf7726-2c96f5fe-8f1013aa
+                --msfragger_key @MSFRAGGER_ACADEMIC_USE_KEY@
+                --ionquant_key @IONQUANT_ACADEMIC_USE_KEY@
+                --diatracer_key @DIATRACER_ACADEMIC_USE_KEY@
                 --headless
                 --threads \${GALAXY_SLOTS:-8}
                 --ram \$[ \${GALAXY_MEMORY_MB:-8192} / 1024 ]
                 --workflow fp.workflow --manifest fp.manifest
                 --workdir outputs
-                --config-msfragger \${env_location}/share/msfragger-*/MSFragger-*/MSFragger-*.jar
-                --config-philosopher \$(which philosopher)
-                --config-python \$(which python)
-                --config-ionquant \${env_location}/share/ionquant-*/IonQuant.jar &&
+                --config-tools-folder tools
+                --config-python \$(which python) &&
 
             @PREPARE_OUTPUTS@
         #end if
@@ -76,65 +82,96 @@
             <option value="log">FragPipe Log</option>
             <option value="combined_outputs">FragPipe Combined Outputs</option>
             <option value="concatenated_outputs">TSV Outputs Concatenated</option>
+            <option value="individual_outputs">Individual Experiment Outputs</option>
         </param>
     </inputs>
 
     <outputs>
         <!-- Workflow file used by FragPipe -->
-        <data name="output_workflow" format="txt" label="${tool.name} on ${on_string}: workflow" from_work_dir="fp.workflow">
+        <data name="output_workflow" format="txt" label="FragPipe workflow" from_work_dir="fp.workflow">
             <filter>workflow_only or (output_options and 'workflow' in output_options)</filter>
         </data>
         <!-- FragPipe log -->
-        <data name="log" format="txt" label="${tool.name} on ${on_string}: log.txt" from_work_dir="outputs/log_*.txt">
+        <data name="log" format="txt" label="FragPipe log.txt" from_work_dir="outputs/log_*.txt">
             <filter>not workflow_only and output_options and 'log' in output_options</filter>
         </data>
 
+        <!-- DIA-NN Quant -->
+        <data name="diaquant_msstats_csv" format="csv" label="FragPipe DIA-NN Quant msstats.csv" from_work_dir="outputs/dia-quant-output/msstats.csv">
+            <filter>(not workflow_only) and ('DIA_SpecLib_Quant' in wf['workflow_name'])</filter>
+        </data>
+        <data name="diaquant_msstats_ptm_csv" format="csv" label="FragPipe DIA-NN Quant msstats_ptm.csv" from_work_dir="outputs/dia-quant-output/msstats_ptm.csv">
+            <filter>(not workflow_only) and ('DIA_SpecLib_Quant' in wf['workflow_name'])</filter>
+        </data>
+        <data name="diaquant_report_tsv_speclib" format="txt" label="FragPipe DIA-NN Quant report-tsv.speclib" from_work_dir="outputs/dia-quant-output/report-tsv.speclib">
+            <filter>(not workflow_only) and ('DIA_SpecLib_Quant' in wf['workflow_name'])</filter>
+        </data>
+        <data name="diaquant_report_gg_matrix_tsv" format="tsv" label="FragPipe DIA-NN Quant report.gg_matrix.tsv" from_work_dir="outputs/dia-quant-output/report.gg_matrix.tsv">
+            <filter>(not workflow_only) and ('DIA_SpecLib_Quant' in wf['workflow_name'])</filter>
+        </data>
+        <data name="diaquant_report_log_txt" format="txt" label="FragPipe DIA-NN Quant report.log.txt" from_work_dir="outputs/dia-quant-output/report.log.txt">
+            <filter>(not workflow_only) and ('DIA_SpecLib_Quant' in wf['workflow_name'])</filter>
+        </data>
+        <data name="diaquant_report_pg_matrix_tsv" format="tsv" label="FragPipe DIA-NN Quant report.pg_matrix.tsv" from_work_dir="outputs/dia-quant-output/report.pg_matrix.tsv">
+            <filter>(not workflow_only) and ('DIA_SpecLib_Quant' in wf['workflow_name'])</filter>
+        </data>
+        <data name="diaquant_report_pr_matrix_tsv" format="tsv" label="FragPipe DIA-NN Quant report.pr_matrix.tsv" from_work_dir="outputs/dia-quant-output/report.pr_matrix.tsv">
+            <filter>(not workflow_only) and ('DIA_SpecLib_Quant' in wf['workflow_name'])</filter>
+        </data>
+        <data name="diaquant_report_stats_tsv" format="tsv" label="FragPipe DIA-NN Quant report.stats.tsv" from_work_dir="outputs/dia-quant-output/report.stats.tsv">
+            <filter>(not workflow_only) and ('DIA_SpecLib_Quant' in wf['workflow_name'])</filter>
+        </data>
+        <data name="diaquant_report_tsv" format="tsv" label="FragPipe DIA-NN Quant report.tsv" from_work_dir="outputs/dia-quant-output/report.tsv">
+            <filter>(not workflow_only) and ('DIA_SpecLib_Quant' in wf['workflow_name'])</filter>
+        </data>
+        <data name="diaquant_report_unique_genes_matrix_tsv" format="tsv" label="FragPipe DIA-NN Quant report.unique_genes_matrix.tsv" from_work_dir="outputs/dia-quant-output/report.unique_genes_matrix.tsv">
+            <filter>(not workflow_only) and ('DIA_SpecLib_Quant' in wf['workflow_name'])</filter>
+        </data>
+
+
         <!-- Collection outputs comprised of separate results for different experiments -->
-        <collection name="output_psm" type="list" label="${tool.name} - ${on_string}: psm.tsv" >
-            <filter>not workflow_only</filter>
+        <collection name="output_psm" type="list" label="FragPipe psm.tsv" >
+            <filter>not workflow_only and 'individual_outputs' in output_options</filter>
             <discover_datasets pattern="(?P&lt;designation&gt;.+\.psm.tsv)" ext="tabular" directory="outputs"/>
         </collection>
-        <collection name="output_ion" type="list" label="${tool.name} - ${on_string}: ion.tsv" >
-            <filter>not workflow_only</filter>
+        <collection name="output_ion" type="list" label="FragPipe ion.tsv" >
+            <filter>not workflow_only and 'individual_outputs' in output_options</filter>
             <discover_datasets pattern="(?P&lt;designation&gt;.+\.ion.tsv)" ext="tabular" directory="outputs"/>
         </collection>
-        <collection name="output_peptide" type="list" label="${tool.name} - ${on_string}: peptide.tsv" >
-            <filter>not workflow_only</filter>
+        <collection name="output_peptide" type="list" label="FragPipe peptide.tsv" >
+            <filter>not workflow_only and 'individual_outputs' in output_options</filter>
             <discover_datasets pattern="(?P&lt;designation&gt;.+\.peptide.tsv)" ext="tabular" directory="outputs"/>
         </collection>
-        <collection name="output_protein" type="list" label="${tool.name} - ${on_string}: protein.tsv" >
-            <filter>not workflow_only</filter>
+        <collection name="output_protein" type="list" label="FragPipe protein.tsv" >
+            <filter>not workflow_only and 'individual_outputs' in output_options</filter>
             <discover_datasets pattern="(?P&lt;designation&gt;.+\.protein.tsv)" ext="tabular" directory="outputs"/>
         </collection>
 
         <!-- Combined results from all experimental groups -->
-        <collection name="combined_outputs" type="list" label="${tool.name} - ${on_string}: Combined Outputs" >
+        <collection name="combined_outputs" type="list" label="FragPipe Combined Outputs" >
             <filter>not workflow_only and output_options and 'combined_outputs' in output_options</filter>
             <discover_datasets pattern="__designation__" ext="tabular" directory="outputs/combined_outputs"/>
         </collection>
 
         <!-- Galaxy-wrapper concatenated results -->
-        <data name="concat_psm_tsv" format="tabular" label="${tool.name} on ${on_string}: Concatenated psm.tsv" from_work_dir="outputs/concat_psm.tsv">
+        <data name="concat_psm_tsv" format="tabular" label="FragPipe Concatenated psm.tsv" from_work_dir="outputs/concat_psm.tsv">
             <filter>not workflow_only and 'concatenated_outputs' in output_options</filter>
         </data>
-        <data name="concat_ion_tsv" format="tabular" label="${tool.name} on ${on_string}: Concatenated ion.tsv" from_work_dir="outputs/concat_ion.tsv">
+        <data name="concat_ion_tsv" format="tabular" label="FragPipe Concatenated ion.tsv" from_work_dir="outputs/concat_ion.tsv">
             <filter>not workflow_only and 'concatenated_outputs' in output_options</filter>
         </data>
-        <data name="concat_peptide_tsv" format="tabular" label="${tool.name} on ${on_string}: Concatenated peptide.tsv" from_work_dir="outputs/concat_peptide.tsv">
+        <data name="concat_peptide_tsv" format="tabular" label="FragPipe Concatenated peptide.tsv" from_work_dir="outputs/concat_peptide.tsv">
             <filter>not workflow_only and 'concatenated_outputs' in output_options</filter>
         </data>
-        <data name="concat_protein_tsv" format="tabular" label="${tool.name} on ${on_string}: Concatenated protein.tsv" from_work_dir="outputs/concat_protein.tsv">
+        <data name="concat_protein_tsv" format="tabular" label="FragPipe Concatenated protein.tsv" from_work_dir="outputs/concat_protein.tsv">
             <filter>not workflow_only and 'concatenated_outputs' in output_options</filter>
         </data>
 
         <!-- PTM-Shepherd Results -->
-        <data name="global_profile_tsv" format="tabular" label="${tool.name} on ${on_string}: global.profile.tsv" from_work_dir="outputs/global.profile.tsv">
+        <data name="global_profile_tsv" format="tabular" label="FragPipe global.profile.tsv" from_work_dir="outputs/ptm-shepherd-output/global.profile.tsv">
                <filter>(not workflow_only) and ('Open' in  wf['workflow_name'])</filter>
         </data>
-        <data name="global_summary_tsv" format="tabular" label="${tool.name} on ${on_string}: global.modsummary.tsv" from_work_dir="outputs/global.modsummary.tsv">
-               <filter>(not workflow_only) and ('Open' in  wf['workflow_name'])</filter>
-        </data>
-        <data name="global_diagmine_tsv" format="tabular" label="${tool.name} on ${on_string}: global.diagmine.tsv" from_work_dir="outputs/global.diagmine.tsv">
+        <data name="global_summary_tsv" format="tabular" label="FragPipe global.modsummary.tsv" from_work_dir="outputs/ptm-shepherd-output/global.modsummary.tsv">
                <filter>(not workflow_only) and ('Open' in  wf['workflow_name'])</filter>
         </data>
 
@@ -142,7 +179,7 @@
             TMT/iTRAW Results
             Only produced by TMT, TRAQ, and SLC workflows
         -->
-        <collection name="tmt_results" type="list" label="${tool.name} - ${on_string}: TMT Results" >
+        <collection name="tmt_results" type="list" label="FragPipe TMT Results" >
             <discover_datasets pattern="__designation__" ext="tabular" directory="outputs/tmt-report"/>
             <filter>(not workflow_only) and ('TMT' in wf['workflow_name'])</filter>
         </collection>
@@ -150,67 +187,63 @@
 
     <tests>
       <test expect_num_outputs="11">
-        <param name="inputs" value="default/test1.mzML,default/test2.mzML" ftype="mzml"/>
-        <param name="database_name" value="default/test.fasta" ftype="fasta"/>
-        <param name="manifest" value="default/test.manifest" ftype="tabular"/>
-        <param name="wf|workflow_name" value="Default"/>
-        <param name="output_options" value="workflow,log,combined_outputs,concatenated_outputs"/>
+        <param name="inputs" value="basic-search/test1.mzML,basic-search/test2.mzML" ftype="mzml"/>
+        <param name="database_name" value="basic-search/test.fasta" ftype="fasta"/>
+        <param name="manifest" value="basic-search/test.manifest" ftype="tabular"/>
+        <param name="wf|workflow_name" value="Basic-Search"/>
+        <param name="output_options" value="workflow,log,combined_outputs,concatenated_outputs,individual_outputs"/>
         <param name="license_agreements" value="true"/>
         <param name="wf|validation|validation_tab|psm_validation|run_psm_validation" value="percolator"/>
         <output name="concat_psm_tsv" ftype="tabular">
             <assert_contents>
-                <has_text text="Experiment&#x9;Spectrum&#x9;Spectrum File&#x9;Peptide&#x9;Modified Peptide&#x9;Extended Peptide&#x9;Prev AA&#x9;Next AA&#x9;Peptide Length&#x9;Charge&#x9;Retention&#x9;Observed Mass&#x9;Calibrated Observed Mass&#x9;Observed M/Z&#x9;Calibrated Observed M/Z&#x9;Calculated Peptide Mass&#x9;Calculated M/Z&#x9;Delta Mass&#x9;Expectation&#x9;Hyperscore&#x9;Nextscore&#x9;PeptideProphet Probability&#x9;Number of Enzymatic Termini&#x9;Number of Missed Cleavages&#x9;Protein Start&#x9;Protein End&#x9;Intensity&#x9;Assigned Modifications&#x9;Observed Modifications&#x9;Purity&#x9;Is Unique&#x9;Protein&#x9;Protein ID&#x9;Entry Name&#x9;Gene&#x9;Protein Description&#x9;Mapped Genes&#x9;Mapped Proteins"/>
+                <has_text text="Experiment&#x9;Spectrum&#x9;Spectrum File"/>
                 <has_text text="sample1"/>
+                <has_text text="sample2"/>
             </assert_contents>
         </output>
         <output name="concat_ion_tsv" ftype="tabular">
             <assert_contents>
-                <has_text text="Experiment&#x9;Peptide Sequence&#x9;Modified Sequence&#x9;Prev AA&#x9;Next AA&#x9;Peptide Length&#x9;Protein Start&#x9;Protein End&#x9;M/Z&#x9;Charge&#x9;Observed Mass&#x9;Probability&#x9;Expectation&#x9;Spectral Count&#x9;Intensity&#x9;Assigned Modifications&#x9;Observed Modifications&#x9;Protein&#x9;Protein ID&#x9;Entry Name&#x9;Gene&#x9;Protein Description&#x9;Mapped Genes&#x9;Mapped Proteins"/>
+                <has_text text="Experiment&#x9;Peptide Sequence&#x9;Modified Sequence"/>
                 <has_text text="sample1"/>
+                <has_text text="sample2"/>
             </assert_contents>
         </output>
         <output name="concat_peptide_tsv" ftype="tabular">
             <assert_contents>
-                <has_text text="Experiment&#x9;Peptide&#x9;Prev AA&#x9;Next AA&#x9;Peptide Length&#x9;Protein Start&#x9;Protein End&#x9;Charges&#x9;Probability&#x9;Spectral Count&#x9;Intensity&#x9;Assigned Modifications&#x9;Observed Modifications&#x9;Protein&#x9;Protein ID&#x9;Entry Name&#x9;Gene&#x9;Protein Description&#x9;Mapped Genes&#x9;Mapped Proteins"/>
+                <has_text text="Experiment&#x9;Peptide&#x9;Prev AA&#x9;"/>
                 <has_text text="sample1"/>
+                <has_text text="sample2"/>
             </assert_contents>
         </output>
         <output name="concat_protein_tsv" ftype="tabular">
             <assert_contents>
-                <has_text text="Experiment&#x9;Protein&#x9;Protein ID&#x9;Entry Name&#x9;Gene&#x9;Length&#x9;Organism&#x9;Protein Description&#x9;Protein Existence&#x9;Coverage&#x9;Protein Probability&#x9;Top Peptide Probability&#x9;Total Peptides&#x9;Unique Peptides&#x9;Razor Peptides&#x9;Total Spectral Count&#x9;Unique Spectral Count&#x9;Razor Spectral Count&#x9;Total Intensity&#x9;Unique Intensity&#x9;Razor Intensity&#x9;Razor Assigned Modifications&#x9;Razor Observed Modifications&#x9;Indistinguishable Proteins"/>
+                <has_text text="Experiment&#x9;Protein&#x9;Protein ID&#x9;"/>
                 <has_text text="sample1"/>
+                <has_text text="sample2"/>
             </assert_contents>
         </output>
-        <output name="output_workflow" ftype="txt" file="default/outputs/workflow.txt" compare="contains">
-            <assert_contents>
-                <has_text text="crystalc.run-crystalc=false"/>
-            </assert_contents>
-        </output>
+        <output name="output_workflow" ftype="txt" file="basic-search/outputs/workflow.txt" compare="contains"/>
         <output name="log" ftype="txt">
             <assert_contents>
-                <has_text text="FragPipe version 20.0"/>
+                <has_text text="FragPipe version 23.0"/>
             </assert_contents>
         </output>
         <output_collection name="combined_outputs" type="list">
             <element name="combined_protein.tsv" ftype="tabular">
                 <assert_contents>
-                    <has_text text="Protein&#x9;Protein ID&#x9;Entry Name&#x9;Gene&#x9;Protein Length&#x9;Organism&#x9;Protein Existence&#x9;Description&#x9;Protein Probability&#x9;Top Peptide Probability&#x9;Combined Total Peptides&#x9;Combined Spectral Count&#x9;Combined Unique Spectral Count&#x9;Combined Total Spectral Count&#x9;sample1 Spectral Count&#x9;sample2 Spectral Count&#x9;sample1 Intensity&#x9;sample2 Intensity&#x9;Indistinguishable Proteins"/>
+                    <has_text text="Protein&#x9;Protein ID&#x9;Entry Name"/>
                 </assert_contents>
             </element>
         </output_collection>
       </test>
-      <test expect_num_outputs="11">
-        <param name="inputs" value="default/test1.mzML,default/test2.mzML" ftype="mzml"/>
-        <param name="database_name" value="default/test.fasta" ftype="fasta"/>
-        <param name="manifest" value="default/test.manifest" ftype="tabular"/>
+      <test expect_num_outputs="7">
+        <param name="inputs" value="basic-search/test1.mzML,basic-search/test2.mzML" ftype="mzml"/>
+        <param name="database_name" value="basic-search/test.fasta" ftype="fasta"/>
+        <param name="manifest" value="basic-search/test.manifest" ftype="tabular"/>
         <param name="wf|workflow_name" value="Nonspecific-HLA"/>
         <param name="output_options" value="workflow,log,combined_outputs,concatenated_outputs"/>
         <param name="license_agreements" value="true"/>
-        <output name="output_workflow" ftype="txt" file="nonspecific-hla/outputs/workflow.txt" compare="contains">
-            <assert_contents>
-                <has_text text="crystalc.run-crystalc=false"/>
-            </assert_contents>
-        </output>
+        <output name="output_workflow" ftype="txt" file="nonspecific-hla/outputs/workflow.txt" compare="contains"/>
         <output name="concat_protein_tsv" ftype="tabular">
             <assert_contents>
                 <has_text text="sample1"/>
@@ -219,110 +252,16 @@
             </assert_contents>
         </output>
       </test>
-      <test expect_num_outputs="11">
-        <param name="inputs" value="default/test1.mzML,default/test2.mzML" ftype="mzml"/>
-        <param name="database_name" value="default/test.fasta" ftype="fasta"/>
-        <param name="manifest" value="default/test.manifest" ftype="tabular"/>
-        <param name="wf|workflow_name" value="Default"/>
-        <param name="output_options" value="workflow,log,combined_outputs,concatenated_outputs"/>
-        <param name="license_agreements" value="true"/>
-        <param name="wf|validation|validation_tab|psm_validation|run_psm_validation" value="msbooster_percolator"/>
-        <output name="concat_psm_tsv" ftype="tabular">
-            <assert_contents>
-                <has_text text="Experiment&#x9;Spectrum&#x9;Spectrum File&#x9;Peptide&#x9;Modified Peptide&#x9;Extended Peptide&#x9;Prev AA&#x9;Next AA&#x9;Peptide Length&#x9;Charge&#x9;Retention&#x9;Observed Mass&#x9;Calibrated Observed Mass&#x9;Observed M/Z&#x9;Calibrated Observed M/Z&#x9;Calculated Peptide Mass&#x9;Calculated M/Z&#x9;Delta Mass&#x9;SpectralSim&#x9;RTScore&#x9;Expectation&#x9;Hyperscore&#x9;Nextscore&#x9;PeptideProphet Probability&#x9;Number of Enzymatic Termini&#x9;Number of Missed Cleavages&#x9;Protein Start&#x9;Protein End&#x9;Intensity&#x9;Assigned Modifications&#x9;Observed Modifications&#x9;Purity&#x9;Is Unique&#x9;Protein&#x9;Protein ID&#x9;Entry Name&#x9;Gene&#x9;Protein Description&#x9;Mapped Genes&#x9;Mapped Proteins"/>
-                <has_text text="sample1"/>
-            </assert_contents>
-        </output>
-        <output name="concat_ion_tsv" ftype="tabular">
-            <assert_contents>
-                <has_text text="Experiment&#x9;Peptide Sequence&#x9;Modified Sequence&#x9;Prev AA&#x9;Next AA&#x9;Peptide Length&#x9;Protein Start&#x9;Protein End&#x9;M/Z&#x9;Charge&#x9;Observed Mass&#x9;Probability&#x9;Expectation&#x9;Spectral Count&#x9;Intensity&#x9;Assigned Modifications&#x9;Observed Modifications&#x9;Protein&#x9;Protein ID&#x9;Entry Name&#x9;Gene&#x9;Protein Description&#x9;Mapped Genes&#x9;Mapped Proteins"/>
-                <has_text text="sample1"/>
-            </assert_contents>
-        </output>
-        <output name="concat_peptide_tsv" ftype="tabular">
-            <assert_contents>
-                <has_text text="Experiment&#x9;Peptide&#x9;Prev AA&#x9;Next AA&#x9;Peptide Length&#x9;Protein Start&#x9;Protein End&#x9;Charges&#x9;Probability&#x9;Spectral Count&#x9;Intensity&#x9;Assigned Modifications&#x9;Observed Modifications&#x9;Protein&#x9;Protein ID&#x9;Entry Name&#x9;Gene&#x9;Protein Description&#x9;Mapped Genes&#x9;Mapped Proteins"/>
-                <has_text text="sample1"/>
-            </assert_contents>
-        </output>
-        <output name="concat_protein_tsv" ftype="tabular">
-            <assert_contents>
-                <has_text text="Experiment&#x9;Protein&#x9;Protein ID&#x9;Entry Name&#x9;Gene&#x9;Length&#x9;Organism&#x9;Protein Description&#x9;Protein Existence&#x9;Coverage&#x9;Protein Probability&#x9;Top Peptide Probability&#x9;Total Peptides&#x9;Unique Peptides&#x9;Razor Peptides&#x9;Total Spectral Count&#x9;Unique Spectral Count&#x9;Razor Spectral Count&#x9;Total Intensity&#x9;Unique Intensity&#x9;Razor Intensity&#x9;Razor Assigned Modifications&#x9;Razor Observed Modifications&#x9;Indistinguishable Proteins"/>
-                <has_text text="sample1"/>
-            </assert_contents>
-        </output>
-        <output name="output_workflow" ftype="txt" file="default/outputs/workflow_msbooster_percolator.txt" compare="contains">
-            <assert_contents>
-                <has_text text="crystalc.run-crystalc=false"/>
-            </assert_contents>
-        </output>
-        <output name="log" ftype="txt">
-            <assert_contents>
-                <has_text text="FragPipe version 20.0"/>
-            </assert_contents>
-        </output>
-        <output_collection name="combined_outputs" type="list">
-            <element name="combined_protein.tsv" ftype="tabular">
-                <assert_contents>
-                    <has_text text="Protein&#x9;Protein ID&#x9;Entry Name&#x9;Gene&#x9;Protein Length&#x9;Organism&#x9;Protein Existence&#x9;Description&#x9;Protein Probability&#x9;Top Peptide Probability&#x9;Combined Total Peptides&#x9;Combined Spectral Count&#x9;Combined Unique Spectral Count&#x9;Combined Total Spectral Count&#x9;sample1 Spectral Count&#x9;sample2 Spectral Count&#x9;sample1 Intensity&#x9;sample2 Intensity&#x9;Indistinguishable Proteins"/>
-                </assert_contents>
-            </element>
-        </output_collection>
-      </test>
-      <test expect_num_outputs="11">
+      <test expect_num_outputs="1">
         <param name="inputs" value="tmt11/test1.mzML,tmt11/test2.mzML" ftype="mzml"/>
         <param name="database_name" value="tmt11/test.fasta" ftype="fasta"/>
         <param name="manifest" value="tmt11/test.manifest" ftype="tabular"/>
         <param name="wf|annotation" value="tmt11/test.annotation" ftype="tabular"/>
         <param name="wf|workflow_name" value="TMT11"/>
-        <param name="output_options" value="workflow,log,concatenated_outputs"/>
+        <param name="output_options" value="workflow"/>
         <param name="license_agreements" value="true"/>
-        <output name="concat_psm_tsv" ftype="tabular">
-            <assert_contents>
-                <has_text text="Experiment&#x9;Spectrum&#x9;Spectrum File&#x9;Peptide&#x9;Modified Peptide&#x9;Extended Peptide&#x9;Prev AA&#x9;Next AA&#x9;Peptide Length&#x9;Charge&#x9;Retention&#x9;Observed Mass&#x9;Calibrated Observed Mass&#x9;Observed M/Z&#x9;Calibrated Observed M/Z&#x9;Calculated Peptide Mass&#x9;Calculated M/Z&#x9;Delta Mass&#x9;SpectralSim&#x9;RTScore&#x9;Expectation&#x9;Hyperscore&#x9;Nextscore&#x9;PeptideProphet Probability&#x9;Number of Enzymatic Termini&#x9;Number of Missed Cleavages&#x9;Protein Start&#x9;Protein End&#x9;Intensity&#x9;Assigned Modifications&#x9;Observed Modifications&#x9;Purity&#x9;Is Unique&#x9;Protein&#x9;Protein ID&#x9;Entry Name&#x9;Gene&#x9;Protein Description&#x9;Mapped Genes&#x9;Mapped Proteins"/>
-                <has_text text="sample1"/>
-            </assert_contents>
-        </output>
-        <output name="concat_ion_tsv" ftype="tabular">
-            <assert_contents>
-                <has_text text="Experiment&#x9;Peptide Sequence&#x9;Modified Sequence&#x9;Prev AA&#x9;Next AA&#x9;Peptide Length&#x9;Protein Start&#x9;Protein End&#x9;M/Z&#x9;Charge&#x9;Observed Mass&#x9;Probability&#x9;Expectation&#x9;Spectral Count&#x9;Intensity&#x9;Assigned Modifications&#x9;Observed Modifications&#x9;Protein&#x9;Protein ID&#x9;Entry Name&#x9;Gene&#x9;Protein Description&#x9;Mapped Genes&#x9;Mapped Proteins"/>
-                <has_text text="sample1"/>
-            </assert_contents>
-        </output>
-        <output name="concat_peptide_tsv" ftype="tabular">
-            <assert_contents>
-                <has_text text="Experiment&#x9;Peptide&#x9;Prev AA&#x9;Next AA&#x9;Peptide Length&#x9;Protein Start&#x9;Protein End&#x9;Charges&#x9;Probability&#x9;Spectral Count&#x9;Intensity&#x9;Assigned Modifications&#x9;Observed Modifications&#x9;Protein&#x9;Protein ID&#x9;Entry Name&#x9;Gene&#x9;Protein Description&#x9;Mapped Genes&#x9;Mapped Proteins"/>
-                <has_text text="sample1"/>
-            </assert_contents>
-        </output>
-        <output name="concat_protein_tsv" ftype="tabular">
-            <assert_contents>
-                <has_text text="Experiment&#x9;Protein&#x9;Protein ID&#x9;Entry Name&#x9;Gene&#x9;Length&#x9;Organism&#x9;Protein Description&#x9;Protein Existence&#x9;Coverage&#x9;Protein Probability&#x9;Top Peptide Probability&#x9;Total Peptides&#x9;Unique Peptides&#x9;Razor Peptides&#x9;Total Spectral Count&#x9;Unique Spectral Count&#x9;Razor Spectral Count&#x9;Total Intensity&#x9;Unique Intensity&#x9;Razor Intensity&#x9;Razor Assigned Modifications&#x9;Razor Observed Modifications&#x9;Indistinguishable Proteins"/>
-                <has_text text="sample1"/>
-            </assert_contents>
-        </output>
-        <output name="output_workflow" ftype="txt" file="tmt11/outputs/workflow.txt" compare="contains">
-            <assert_contents>
-                <has_text text="crystalc.run-crystalc=false"/>
-            </assert_contents>
-        </output>
-        <output name="log" ftype="txt">
-            <assert_contents>
-                <has_text text="FragPipe version 20.0"/>
-            </assert_contents>
-        </output>
-        <output_collection name="tmt_results" type="list">
-            <element name="abundance_gene_MD.tsv" ftype="tabular">
-                <assert_contents>
-                    <has_text text="Index&#x9;NumberPSM&#x9;ProteinID&#x9;MaxPepProb&#x9;ReferenceIntensity&#x9;sample-01&#x9;sample-02&#x9;sample-03&#x9;sample-04&#x9;sample-05&#x9;sample-06&#x9;sample-07&#x9;sample-08&#x9;sample-09&#x9;sample-10&#x9;Bridge"/>
-                </assert_contents>
-            </element>
-            <element name="ratio_gene_MD.tsv" ftype="tabular">
-                <assert_contents>
-                    <has_text text="Index&#x9;NumberPSM&#x9;ProteinID&#x9;MaxPepProb&#x9;ReferenceIntensity&#x9;sample-01&#x9;sample-02&#x9;sample-03&#x9;sample-04&#x9;sample-05&#x9;sample-06&#x9;sample-07&#x9;sample-08&#x9;sample-09&#x9;sample-10&#x9;Bridge"/>
-                </assert_contents>
-            </element>
-        </output_collection>
+        <param name="workflow_only" value="true"/>
+        <output name="output_workflow" ftype="txt" file="tmt11/outputs/workflow.txt" compare="contains"/>
       </test>
     </tests>
 
@@ -332,7 +271,8 @@
 FragPipe_ is a suite of computational tools enabling comprehensive analysis of mass spectrometry-based proteomics data.
 FragPipe uses MSFragger_ - an ultrafast proteomic search engine suitable for both conventional and “open” (wide precursor mass tolerance) peptide identification.
 
-FragPipe_ runs a user selected analysis workflow_
+Each FragPipe job is configured around a user-selected FragPipe _workflow.
+Blank optional parameters in the Galaxy tool will default to the settings in the selected FragPipe workflow file.
 
 **License Agreements**