comparison rg_rnaStarSolo.xml @ 13:9ee34ba73ebf draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/rgrnastar commit ae6b59a8e52fd34e2347d1fd8d34129c36779266
author iuc
date Fri, 17 Feb 2023 20:04:43 +0000
parents 79b885ce78d7
children 1cd2511a396e
comparison
equal deleted inserted replaced
12:79b885ce78d7 13:9ee34ba73ebf
1 <tool id="rna_starsolo" name="RNA STARSolo" version="@VERSION@" profile="20.01" license="MIT"> 1 <tool id="rna_starsolo" name="RNA STARSolo" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@PROFILE@" license="MIT">
2 <description>mapping, demultiplexing and gene quantification for single cell RNA-seq</description> 2 <description>mapping, demultiplexing and gene quantification for single cell RNA-seq</description>
3 <macros> 3 <macros>
4 <import>macros.xml</import> 4 <import>macros.xml</import>
5 </macros> 5 </macros>
6 <expand macro="edam"/> 6 <expand macro="edam"/>
20 ## Supports Drop-seq, 10X Chromium, inDrop and Smart-Seq 20 ## Supports Drop-seq, 10X Chromium, inDrop and Smart-Seq
21 --soloType $sc.solo_type 21 --soloType $sc.solo_type
22 22
23 #if str($sc.solo_type) == "CB_UMI_Simple": 23 #if str($sc.solo_type) == "CB_UMI_Simple":
24 @READSHANDLING@ 24 @READSHANDLING@
25 --soloCBwhitelist '$sc.soloCBwhitelist' 25 #if $sc.soloCBwhitelist:
26 --soloCBwhitelist '$sc.soloCBwhitelist'
27 #else
28 --soloCBwhitelist None
29 #end if
26 ## 1 - check length of barcode, 0 - do not check 30 ## 1 - check length of barcode, 0 - do not check
27 ## Good for checking custom chemistries 31 ## Good for checking custom chemistries
28 --soloBarcodeReadLength $sc.soloBarcodeReadLength 32 --soloBarcodeReadLength $sc.soloBarcodeReadLength
29 #if str($sc.params.chemistry) == "CR2": 33 #if str($sc.params.chemistry) == "Cv2":
30 --soloCBstart 1 34 --soloCBstart 1
31 --soloCBlen 16 35 --soloCBlen 16
32 --soloUMIstart 17 36 --soloUMIstart 17
33 --soloUMIlen 10 37 --soloUMIlen 10
34 #else if str($sc.params.chemistry) == "CR3": 38 #else if str($sc.params.chemistry) == "Cv3":
35 --soloCBstart 1 39 --soloCBstart 1
36 --soloCBlen 16 40 --soloCBlen 16
37 --soloUMIstart 17 41 --soloUMIstart 17
38 --soloUMIlen 12 42 --soloUMIlen 12
39 #else if str($sc.params.chemistry) == "custom": 43 #else if str($sc.params.chemistry) == "custom":
88 #end if 92 #end if
89 #end if 93 #end if
90 --soloCBwhitelist None 94 --soloCBwhitelist None
91 #end if 95 #end if
92 96
93 --soloUMIfiltering $solo.soloUMIfiltering
94 --soloStrand $solo.soloStrand 97 --soloStrand $solo.soloStrand
95 --soloFeatures $solo.soloFeatures 98 --soloFeatures $solo.soloFeatures
96 --soloUMIdedup $sc.soloUMIdedup 99 --soloUMIdedup $sc.umidedup.soloUMIdedup
97 --quantMode TranscriptomeSAM 100 #if str($sc.umidedup.soloUMIdedup) == "1MM_CR":
98 --outSAMtype BAM Unsorted 101 --soloUMIfiltering $sc.umidedup.soloUMIfiltering
102 #end if
103 --quantMode TranscriptomeSAM $solo.quantModeGene
104 #set $tag_names = str($solo.outSAMattributes).replace(',', ' ')
105 --outSAMattributes $tag_names
106 #if "CB" in $tag_names or "UB" in $tag_names or str($outWig.outWigType) != 'None':
107 --outSAMtype BAM SortedByCoordinate
108 #else:
109 --outSAMtype BAM Unsorted
110 #end if
99 111
100 #if str($solo.filter.filter_type) == "cellranger2": 112 #if str($solo.filter.filter_type) == "cellranger2":
101 --soloCellFilter CellRanger2.2 $solo.filter.n_expected $solo.filter.max_perc $solo.filter.max_min_ratio 113 --soloCellFilter CellRanger2.2 $solo.filter.n_expected $solo.filter.max_perc $solo.filter.max_min_ratio
102 #else if str($solo.filter.filter_type) == "emptydrops": 114 #else if str($solo.filter.filter_type) == "emptydrops":
103 --soloCellFilter EmptyDrops_CR $solo.filter.nExpectedCells $solo.filter.maxPercentile $solo.filter.maxMinRatio $solo.filter.indMin $solo.filter.indMax $solo.filter.umiMin $solo.filter.umiMinFracMedian $solo.filter.candMaxN $solo.filter.FDR $solo.filter.simN 115 --soloCellFilter EmptyDrops_CR $solo.filter.nExpectedCells $solo.filter.maxPercentile $solo.filter.maxMinRatio $solo.filter.indMin $solo.filter.indMax $solo.filter.umiMin $solo.filter.umiMinFracMedian $solo.filter.candMaxN $solo.filter.FDR $solo.filter.simN
107 --soloCellFilter None 119 --soloCellFilter None
108 #end if 120 #end if
109 ## Splice junctions are always under "raw" directory 121 ## Splice junctions are always under "raw" directory
110 122
111 --soloOutFormatFeaturesGeneField3 '${solo.soloOutFormatFeaturesGeneField3}' 123 --soloOutFormatFeaturesGeneField3 '${solo.soloOutFormatFeaturesGeneField3}'
124
125 ## Limits
126 @LIMITS@
127
128 ##outWig:
129 @OUTWIG@
112 ## Rename the the selected features directory 130 ## Rename the the selected features directory
113 && mv Solo.out/${solo.soloFeatures} Solo.out/soloFeatures 131 && mv Solo.out/${solo.soloFeatures} Solo.out/soloFeatures
114 ## put the barcodes and features stats into a single file 132 ## put the barcodes and features stats into a single file
115 && cat <(echo "Barcodes:") Solo.out/Barcodes.stats <(echo "Genes:") Solo.out/soloFeatures/Features.stats > '${output_stats}' 133 && cat <(echo "Barcodes:") Solo.out/Barcodes.stats <(echo "Genes:") Solo.out/soloFeatures/Features.stats > '${output_stats}'
116 134
117 ## BAM sorting (logic copied from samtools_sort wrapper) 135
118 ## choosing BAM SortedByCoord appeared once to give fewer reads 136 #if "CB" in $tag_names or "UB" in $tag_names or str($outWig.outWigType) != 'None':
119 ## than BAM Unsorted followed by a samtools sort 137 ## recompress BAM output for smaller file size
120 ## so better go with the latter? 138 && samtools view -b -o '$output_BAM' Aligned.sortedByCoord.out.bam
121 139 #else:
122 && 140 ## BAM sorting (logic copied from samtools_sort wrapper)
123 ##compute the number of ADDITIONAL threads to be used by samtools (-@) 141 ## choosing BAM SortedByCoord appeared once to give fewer reads
124 addthreads=\${GALAXY_SLOTS:-2} && (( addthreads-- )) && 142 ## than BAM Unsorted followed by a samtools sort
125 ##compute the number of memory available to samtools sort (-m) 143 ## so better go with the latter?
126 ##use only 75% of available: https://github.com/samtools/samtools/issues/831 144
127 addmemory=\${GALAXY_MEMORY_MB_PER_SLOT:-768} && 145 &&
128 ((addmemory=addmemory*75/100)) && 146 ##compute the number of ADDITIONAL threads to be used by samtools (-@)
129 samtools sort -@ \$addthreads -m \$addmemory"M" -T "\${TMPDIR:-.}" -O bam -o '$output_BAM' Aligned.out.bam 147 addthreads=\${GALAXY_SLOTS:-2} && (( addthreads-- )) &&
148 ##compute the number of memory available to samtools sort (-m)
149 ##use only 75% of available: https://github.com/samtools/samtools/issues/831
150 addmemory=\${GALAXY_MEMORY_MB_PER_SLOT:-768} &&
151 ((addmemory=addmemory*75/100)) &&
152 samtools sort -@ \$addthreads -m \$addmemory"M" -T "\${TMPDIR:-.}" -O bam -o '$output_BAM' Aligned.out.bam
153 #end if
154 ##outWig:
155 @OUTWIGOUTPUTS@
156
130 ]]></command> 157 ]]></command>
131 <configfiles> 158 <configfiles>
132 <configfile name="manifest_file" > 159 <configfile name="manifest_file" >
133 #if str($sc.solo_type) == "SmartSeq": 160 #if str($sc.solo_type) == "SmartSeq":
134 #set $cellids_fh = open(str($sc.cell_ids), 'r') 161 #set $cellids_fh = open(str($sc.cell_ids), 'r')
168 <when value="with-gtf"> 195 <when value="with-gtf">
169 <expand macro="index_selection" with_gene_model="1" /> 196 <expand macro="index_selection" with_gene_model="1" />
170 </when> 197 </when>
171 <when value="without-gtf"> 198 <when value="without-gtf">
172 <expand macro="index_selection" with_gene_model="0" /> 199 <expand macro="index_selection" with_gene_model="0" />
173 <expand macro="@SJDBOPTIONS@" optional="false" /> 200 <expand macro="SJDBOPTIONS"/>
174 </when> 201 </when>
175 </conditional> 202 </conditional>
176 </when> 203 </when>
177 <when value="history"> 204 <when value="history">
178 <expand macro="ref_selection" /> 205 <expand macro="ref_selection" />
179 <expand macro="@SJDBOPTIONS@" optional="false"/> 206 <expand macro="SJDBOPTIONS"/>
180 </when> 207 </when>
181 </conditional> 208 </conditional>
182 <conditional name="sc" > 209 <conditional name="sc" >
183 <param name="solo_type" type="select" label="Type of single-cell RNA-seq" > 210 <param name="solo_type" type="select" label="Type of single-cell RNA-seq" >
184 <option value="CB_UMI_Simple">Drop-seq or 10X Chromium</option> 211 <option value="CB_UMI_Simple">Drop-seq or 10X Chromium</option>
185 <option value="CB_UMI_Complex">inDrop</option> 212 <option value="CB_UMI_Complex">inDrop</option>
186 <option value="SmartSeq">Smart-Seq</option> 213 <option value="SmartSeq">Smart-Seq</option>
187 </param> 214 </param>
188 <when value="CB_UMI_Simple"> 215 <when value="CB_UMI_Simple">
189 <expand macro="input_selection" /> 216 <expand macro="input_selection" />
190 <param format="txt,tsv" argument="--soloCBwhitelist" type="data" label="RNA-Seq Cell Barcode Whitelist"/> 217 <param format="txt,tsv" argument="--soloCBwhitelist" optional="True" type="data" label="RNA-Seq Cell Barcode Whitelist"/>
191 <conditional name="params" > 218 <conditional name="params" >
192 <param name="chemistry" type="select" label="Configure Chemistry Options"> 219 <param name="chemistry" type="select" label="Configure Chemistry Options">
193 <option value="CR2" selected="true">Cell Ranger v2</option> 220 <option value="Cv2" selected="true">Chromium chemistry v2</option>
194 <option value="CR3">Cell Ranger v3</option> 221 <option value="Cv3">Chromium chemistry v3</option>
195 <option value="custom">Custom</option> 222 <option value="custom">Custom</option>
196 </param> 223 </param>
197 <when value="CR2" /> 224 <when value="Cv2" />
198 <when value="CR3" /> 225 <when value="Cv3" />
199 <when value="custom" > 226 <when value="custom" >
200 <param argument="--soloCBstart" type="integer" min="1" value="1" label="Cell Barcode Start Base" /> 227 <param argument="--soloCBstart" type="integer" min="1" value="1" label="Cell Barcode Start Base" />
201 <param argument="--soloCBlen" type="integer" min="1" value="16" label="Cell Barcode Length" /> 228 <param argument="--soloCBlen" type="integer" min="1" value="16" label="Cell Barcode Length" />
202 <param argument="--soloUMIstart" type="integer" min="1" value="17" label="UMI Start Base" /> 229 <param argument="--soloUMIstart" type="integer" min="1" value="17" label="UMI Start Base" />
203 <param argument="--soloUMIlen" type="integer" min="1" value="10" label="UMI Length" /> 230 <param argument="--soloUMIlen" type="integer" min="1" value="10" label="UMI Length" />
217 </conditional> 244 </conditional>
218 <expand macro="solo_adapter_params" /> 245 <expand macro="solo_adapter_params" />
219 </when> 246 </when>
220 </conditional> 247 </conditional>
221 <param argument="--soloBarcodeReadLength" type="boolean" truevalue="1" falsevalue="0" checked="true" label="Barcode Size is same size of the Read" help="Disable this if your R1 barcodes contain poly-T bases after the barcode sequence." /> 248 <param argument="--soloBarcodeReadLength" type="boolean" truevalue="1" falsevalue="0" checked="true" label="Barcode Size is same size of the Read" help="Disable this if your R1 barcodes contain poly-T bases after the barcode sequence." />
222 <param argument="--soloUMIdedup" type="select" label="UMI deduplication (collapsing) algorithm" help="All has all UMIs with 1 mismatch distance to each other collapsed, Directional follows the 'directional' method given in UMI-tools, Exact collapses only exactly matching UMIs."> 249 <conditional name="umidedup">
223 <expand macro="umidedup_options" /> 250 <param argument="--soloUMIdedup" type="select" label="UMI deduplication (collapsing) algorithm" help="All has all UMIs with 1 mismatch distance to each other collapsed, Directional follows the 'directional' method given in UMI-tools, Exact collapses only exactly matching UMIs.">
224 <option value="Exact" >Exact</option> 251 <expand macro="umidedup_options" />
225 <option value="1MM_CR" >CellRanger2-4 algorithm</option> 252 <option value="Exact" >Exact</option>
226 </param> 253 <option value="1MM_CR" >CellRanger2-4 algorithm</option>
254 </param>
255 <when value="1MM_All"/>
256 <when value="1MM_Directional_UMItools"/>
257 <when value="1MM_Directional"/>
258 <when value="Exact"/>
259 <when value="1MM_CR">
260 <param argument="--soloUMIfiltering" type="select" label="Type of UMI filtering" >
261 <option value="-" selected="true">Remove UMIs with N and homopolymers (similar to CellRanger 2.2.0)</option>
262 <option value="MultiGeneUMI" >Remove lower-count UMIs that map to more than one gene</option>
263 <option value="MultiGeneUMI_All" >Remove all UMIs that map to more than one gene</option>
264 <option value="MultiGeneUMI_CR" >Remove lower-count UMIs that map to more than one gene, matching CellRanger > 3.0.0</option>
265 </param>
266 </when>
267 </conditional>
227 <param argument="--soloCBmatchWLtype" type="select" label="Matching the Cell Barcodes to the WhiteList" help="Exact: only exact matches allowed; 1MM: only one match in whitelist with 1 mismatched base allowed. Allowed 268 <param argument="--soloCBmatchWLtype" type="select" label="Matching the Cell Barcodes to the WhiteList" help="Exact: only exact matches allowed; 1MM: only one match in whitelist with 1 mismatched base allowed. Allowed
228 CBs have to have at least one read with exact match; 1MM_multi: multiple matches in whitelist with 1 mismatched base allowed, posterior probability calculation is used choose one of the matches; 1MM_multi_pseudocounts: same as 1MM_Multi, but pseudocounts of 1 are added to all whitelist barcodes."> 269 CBs have to have at least one read with exact match; 1MM_multi: multiple matches in whitelist with 1 mismatched base allowed, posterior probability calculation is used choose one of the matches; 1MM_multi_pseudocounts: same as 1MM_Multi, but pseudocounts of 1 are added to all whitelist barcodes.">
229 <expand macro="cb_match_wl_common" /> 270 <expand macro="cb_match_wl_common" />
230 <expand macro="cb_match_wl_cellranger" /> 271 <expand macro="cb_match_wl_cellranger" />
231 </param> 272 </param>
250 <param name="umi_end_anchor" type="select" label="End anchor base for UMI"> 291 <param name="umi_end_anchor" type="select" label="End anchor base for UMI">
251 <expand macro="anchor_types" /> 292 <expand macro="anchor_types" />
252 </param> 293 </param>
253 <param name="umi_end_anchor_pos" type="integer" value="0" label="0-based position of the UMI end with respect to the anchor base" /> 294 <param name="umi_end_anchor_pos" type="integer" value="0" label="0-based position of the UMI end with respect to the anchor base" />
254 <expand macro="solo_adapter_params" /> 295 <expand macro="solo_adapter_params" />
255 <param argument="--soloUMIdedup" type="select" label="UMI deduplication (collapsing) algorithm" help="All has all UMIs with 1 mismatch distance to each other collapsed, Directional follows the 'directional' method given in UMI-tools, Exact collapses only exactly matching UMIs."> 296 <conditional name="umidedup">
256 <expand macro="umidedup_options" /> 297 <param argument="--soloUMIdedup" type="select" label="UMI deduplication (collapsing) algorithm" help="All has all UMIs with 1 mismatch distance to each other collapsed, Directional follows the 'directional' method given in UMI-tools, Exact collapses only exactly matching UMIs.">
257 <option value="Exact" >Exact</option> 298 <expand macro="umidedup_options" />
258 <option value="1MM_CR" >CellRanger2-4 algorithm</option> 299 <option value="Exact" >Exact</option>
259 </param> 300 <option value="1MM_CR" >CellRanger2-4 algorithm</option>
301 </param>
302 <when value="1MM_All"/>
303 <when value="1MM_Directional_UMItools"/>
304 <when value="1MM_Directional"/>
305 <when value="Exact"/>
306 <when value="1MM_CR">
307 <param argument="--soloUMIfiltering" type="select" label="Type of UMI filtering" >
308 <option value="-" selected="true">Remove UMIs with N and homopolymers (similar to CellRanger 2.2.0)</option>
309 <option value="MultiGeneUMI" >Remove lower-count UMIs that map to more than one gene</option>
310 <option value="MultiGeneUMI_All" >Remove all UMIs that map to more than one gene</option>
311 <option value="MultiGeneUMI_CR" >Remove lower-count UMIs that map to more than one gene, matching CellRanger > 3.0.0</option>
312 </param>
313 </when>
314 </conditional>
260 <param argument="--soloCBmatchWLtype" type="select" label="Matching the Cell Barcodes to the WhiteList" help="Exact: only exact matches allowed; 1MM: only one match in whitelist with 1 mismatched base allowed. Allowed 315 <param argument="--soloCBmatchWLtype" type="select" label="Matching the Cell Barcodes to the WhiteList" help="Exact: only exact matches allowed; 1MM: only one match in whitelist with 1 mismatched base allowed. Allowed
261 CBs have to have at least one read with exact match; 1MM_multi: multiple matches in whitelist with 1 mismatched base allowed, posterior probability calculation is used choose one of the matches; 1MM_multi_pseudocounts: same as 1MM_Multi, but pseudocounts of 1 are added to all whitelist barcodes."> 316 CBs have to have at least one read with exact match; 1MM_multi: multiple matches in whitelist with 1 mismatched base allowed, posterior probability calculation is used choose one of the matches; 1MM_multi_pseudocounts: same as 1MM_Multi, but pseudocounts of 1 are added to all whitelist barcodes.">
262 <expand macro="cb_match_wl_common" /> 317 <expand macro="cb_match_wl_common" />
318 <!-- should we add EditDist_2? -->
263 </param> 319 </param>
264 </when> 320 </when>
265 <when value="SmartSeq"> 321 <when value="SmartSeq">
266 <expand macro="input_selection_smart_seq" /> 322 <expand macro="input_selection_smart_seq" />
267 <param name="cell_ids" format="txt,tsv" type="data" label="File containing cell IDs of the samples. One ID per line in order of samples in the above collection."/> 323 <param name="cell_ids" format="txt,tsv" type="data" label="File containing cell IDs of the samples. One ID per line in order of samples in the above collection."/>
268 <param argument="--soloUMIdedup" type="select" label="UMI deduplication (collapsing) algorithm" help="All has all UMIs with 1 mismatch distance to each other collapsed, Directional follows the 'directional' method given in UMI-tools, Exact collapses only exactly matching UMIs."> 324 <conditional name="umidedup">
269 <option value="Exact" >Exact</option> 325 <param argument="--soloUMIdedup" type="select" label="UMI deduplication (collapsing) algorithm" help="All has all UMIs with 1 mismatch distance to each other collapsed, Directional follows the 'directional' method given in UMI-tools, Exact collapses only exactly matching UMIs.">
270 <option value="NoDedup">Do not deduplicate UMIs</option> 326 <expand macro="umidedup_options" />
271 </param> 327 <option value="Exact" >Exact</option>
328 <option value="NoDedup" >CellRanger2-4 algorithm</option>
329 </param>
330 <when value="1MM_All"/>
331 <when value="1MM_Directional_UMItools"/>
332 <when value="1MM_Directional"/>
333 <when value="Exact"/>
334 <when value="NoDedup"/>
335 </conditional>
272 </when> 336 </when>
273 </conditional> 337 </conditional>
274 <section name="solo" title="Advanced Settings" expanded="true"> 338 <section name="solo" title="Advanced Settings" expanded="true">
275 <param argument="--soloStrand" type="select" label="Strandedness of Library" help="Unstranded has no strand information, Forward has the read strand the same as the original RNA molecule, Reverse has the read strand opposite to the original RNA molecule"> 339 <param argument="--soloStrand" type="select" label="Strandedness of Library" help="Unstranded has no strand information, Forward has the read strand the same as the original RNA molecule, Reverse has the read strand opposite to the original RNA molecule">
276 <option value="Unstranded" >No strand information</option> 340 <option value="Unstranded" >No strand information</option>
279 </param> 343 </param>
280 <param argument="--soloFeatures" type="select" label="Collect UMI counts for these genomic features" > 344 <param argument="--soloFeatures" type="select" label="Collect UMI counts for these genomic features" >
281 <option value="Gene" selected="true">Gene: Count reads matching the Gene Transcript</option> 345 <option value="Gene" selected="true">Gene: Count reads matching the Gene Transcript</option>
282 <option value="SJ" >Splice Junctions: Count reads at exon-intron junctions</option> 346 <option value="SJ" >Splice Junctions: Count reads at exon-intron junctions</option>
283 <option value="GeneFull" >Full: Count all reads overlapping genes' exons and introns</option> 347 <option value="GeneFull" >Full: Count all reads overlapping genes' exons and introns</option>
284 </param> 348 <option value="GeneFull_ExonOverIntron" >Full: Count all reads overlapping genes' exons and introns: prioritize 100% overlap with exons</option>
285 <param argument="--soloUMIfiltering" type="select" label="Type of UMI filtering" > 349 <option value="GeneFull_Ex50pAS" >Full: Count all reads overlapping genes' exons and introns: prioritize 50% overlap with exons. Do not count reads with 100% exonic overlap in the antisense direction.</option>
286 <option value="-" selected="true">Remove UMIs with N and homopolymers (similar to CellRanger 2.2.0)</option>
287 <option value="MultiGeneUMI" >Remove lower-count UMIs that map to more than one gene</option>
288 <option value="MultiGeneUMI_CR" >Remove lower-count UMIs that map to more than one gene, matching CellRanger > 3.0.0</option>
289 </param> 350 </param>
290 <conditional name="filter" > 351 <conditional name="filter" >
291 <param name="filter_type" type="select" label="Cell filtering type and parameters" > 352 <param name="filter_type" type="select" label="Cell filtering type and parameters" >
292 <option value="cellranger2" selected="true" >Simple filtering of CellRanger v2</option> 353 <option value="cellranger2" selected="true" >Simple filtering of CellRanger v2</option>
293 <option value="emptydrops" >EmptyDrops filtering in CellRanger flavor</option> 354 <option value="emptydrops" >EmptyDrops filtering in CellRanger flavor</option>
296 </param> 357 </param>
297 <when value="cellranger2" > 358 <when value="cellranger2" >
298 <param name="n_expected" type="integer" min="1" value="3000" label="Number of expected cells" /> 359 <param name="n_expected" type="integer" min="1" value="3000" label="Number of expected cells" />
299 <param name="max_perc" type="float" min="0" max="1" value="0.99" label="Robust maximum percentile for UMI count" /> 360 <param name="max_perc" type="float" min="0" max="1" value="0.99" label="Robust maximum percentile for UMI count" />
300 <param name="max_min_ratio" type="float" min="1" value="10" label="Maximum to minimum ratio for UMI count" /> 361 <param name="max_min_ratio" type="float" min="1" value="10" label="Maximum to minimum ratio for UMI count" />
362 <param name="output_raw" type="boolean" checked="false" label="Output raw matrix in addition to filtered one" />
301 </when> 363 </when>
302 <when value="emptydrops" > 364 <when value="emptydrops" >
303 <param name="nExpectedCells" type="integer" min="1" value="3000" label="Number of expected cells" /> 365 <param name="nExpectedCells" type="integer" min="1" value="3000" label="Number of expected cells" />
304 <param name="maxPercentile" type="float" min="0" max="1" value="0.99" label="Robust maximum percentile for UMI count" /> 366 <param name="maxPercentile" type="float" min="0" max="1" value="0.99" label="Robust maximum percentile for UMI count" />
305 <param name="maxMinRatio" type="float" min="1" value="10" label="Maximum to minimum ratio for UMI count" /> 367 <param name="maxMinRatio" type="float" min="1" value="10" label="Maximum to minimum ratio for UMI count" />
308 <param name="umiMin" type="integer" value="500" label="Consider at least these many UMIs per barcode after initial cell calling" /> 370 <param name="umiMin" type="integer" value="500" label="Consider at least these many UMIs per barcode after initial cell calling" />
309 <param name="umiMinFracMedian" type="float" value="0.01" label="Minimum UMI:median ratio after initial cell calling" /> 371 <param name="umiMinFracMedian" type="float" value="0.01" label="Minimum UMI:median ratio after initial cell calling" />
310 <param name="candMaxN" type="integer" value="20000" label="Number of extra barcodes after initial cell calling" /> 372 <param name="candMaxN" type="integer" value="20000" label="Number of extra barcodes after initial cell calling" />
311 <param name="FDR" type="float" value="0.01" label="Maximum adjusted p-value for determining a barcode as non-ambient" /> 373 <param name="FDR" type="float" value="0.01" label="Maximum adjusted p-value for determining a barcode as non-ambient" />
312 <param name="simN" type="integer" value="10000" label="Number of log likelihood simulations" /> 374 <param name="simN" type="integer" value="10000" label="Number of log likelihood simulations" />
375 <param name="output_raw" type="boolean" checked="false" label="Output raw matrix in addition to filtered one" />
313 </when> 376 </when>
314 <when value="topcells" > 377 <when value="topcells" >
315 <param name="n_cells" type="integer" min="1" value="3000" label="Number of top cells to report sorted by UMI count" /> 378 <param name="n_cells" type="integer" min="1" value="3000" label="Number of top cells to report sorted by UMI count" />
379 <param name="output_raw" type="boolean" checked="false" label="Output raw matrix in addition to filtered one" />
316 </when> 380 </when>
317 <when value="no_filter" /> 381 <when value="no_filter">
382 <param name="output_raw" type="hidden" value="true" />
383 </when>
318 </conditional> 384 </conditional>
319 <param argument="--soloOutFormatFeaturesGeneField3" type="text" value="Gene Expression" label="Field 3 in the Genes output." help="Input '-' to remove the 3rd column from the output." /> 385 <param argument="--soloOutFormatFeaturesGeneField3" type="text" value="Gene Expression" label="Field 3 in the Genes output." help="Input '-' to remove the 3rd column from the output." />
386 <param argument="--outSAMattributes" type="select" display="checkboxes" multiple="true" optional="true"
387 label="Read alignment tags to include in the BAM output">
388 <expand macro="common_SAM_attributes"/>
389 <option value="CR">CR Cellular barcode sequence bases (uncorrected)</option>
390 <option value="CY">CY Phred quality of the cellular barcode sequence in the CR tag</option>
391 <option value="GX">GX Gene ID</option>
392 <option value="GN">GN Gene name</option>
393 <option value="CB">CB Cell identifier (corrected)</option>
394 <option value="UB">UB UMI (corrected)</option>
395 </param>
396 <param name="quantModeGene" type="boolean" truevalue="GeneCounts" falsevalue="" checked="false" label="Output global gene count" help="Can be used by MultiQC" />
397 <expand macro="limits" />
320 </section> 398 </section>
399 <expand macro="outWig"/>
321 </inputs> 400 </inputs>
322 <outputs> 401 <outputs>
323 <data format="txt" name="output_log" label="${tool.name} on ${on_string}: log" from_work_dir="Log.final.out"> 402 <data format="txt" name="output_log" label="${tool.name} on ${on_string}: log" from_work_dir="Log.final.out">
324 <expand macro="dbKeyActions" /> 403 <expand macro="dbKeyActions" />
325 </data> 404 </data>
331 </data> 410 </data>
332 --> 411 -->
333 <!-- soloCellFilter set to None, if SJ is selected for soloFeatures --> 412 <!-- soloCellFilter set to None, if SJ is selected for soloFeatures -->
334 <data format="tsv" name="output_genes" label="${tool.name} on ${on_string}: Genes raw" 413 <data format="tsv" name="output_genes" label="${tool.name} on ${on_string}: Genes raw"
335 from_work_dir="Solo.out/soloFeatures/raw/features.tsv" > 414 from_work_dir="Solo.out/soloFeatures/raw/features.tsv" >
336 <filter>solo['filter']['filter_type'] == "no_filter" or solo['soloFeatures'] == "SJ" </filter> 415 <filter>solo['filter']['output_raw'] or solo['soloFeatures'] == "SJ" </filter>
337 </data> 416 </data>
338 <data format="tsv" name="output_genes_filtered" label="${tool.name} on ${on_string}: Genes filtered" 417 <data format="tsv" name="output_genes_filtered" label="${tool.name} on ${on_string}: Genes filtered"
339 from_work_dir="Solo.out/soloFeatures/filtered/features.tsv" > 418 from_work_dir="Solo.out/soloFeatures/filtered/features.tsv" >
340 <filter>solo['filter']['filter_type'] != "no_filter" and solo['soloFeatures'] != "SJ" </filter> 419 <filter>solo['filter']['filter_type'] != "no_filter" and solo['soloFeatures'] != "SJ" </filter>
341 </data> 420 </data>
342 <data format="tsv" name="output_barcodes" label="${tool.name} on ${on_string}: Barcodes raw" 421 <data format="tsv" name="output_barcodes" label="${tool.name} on ${on_string}: Barcodes raw"
343 from_work_dir="Solo.out/soloFeatures/raw/barcodes.tsv" > 422 from_work_dir="Solo.out/soloFeatures/raw/barcodes.tsv" >
344 <filter>solo['filter']['filter_type'] == "no_filter" or solo['soloFeatures'] == "SJ" </filter> 423 <filter>solo['filter']['output_raw'] or solo['soloFeatures'] == "SJ" </filter>
345 </data> 424 </data>
346 <data format="tsv" name="output_barcodes_filtered" label="${tool.name} on ${on_string}: Barcodes filtered" 425 <data format="tsv" name="output_barcodes_filtered" label="${tool.name} on ${on_string}: Barcodes filtered"
347 from_work_dir="Solo.out/soloFeatures/filtered/barcodes.tsv" > 426 from_work_dir="Solo.out/soloFeatures/filtered/barcodes.tsv" >
348 <filter>solo['filter']['filter_type'] != "no_filter" and solo['soloFeatures'] != "SJ" </filter> 427 <filter>solo['filter']['filter_type'] != "no_filter" and solo['soloFeatures'] != "SJ" </filter>
349 </data> 428 </data>
350 <data format="mtx" name="output_matrix" label="${tool.name} on ${on_string}: Matrix Gene Counts raw" 429 <data format="mtx" name="output_matrix" label="${tool.name} on ${on_string}: Matrix Gene Counts raw"
351 from_work_dir="Solo.out/soloFeatures/raw/matrix.mtx" > 430 from_work_dir="Solo.out/soloFeatures/raw/matrix.mtx" >
352 <filter>solo['soloFeatures'] == "Gene" and solo['filter']['filter_type'] == "no_filter" </filter> 431 <filter>solo['soloFeatures'] == "Gene" and solo['filter']['output_raw'] </filter>
353 <expand macro="dbKeyActions" /> 432 <expand macro="dbKeyActions" />
354 </data> 433 </data>
355 <data format="mtx" name="output_matrix_filtered" label="${tool.name} on ${on_string}: Matrix Gene Counts filtered" 434 <data format="mtx" name="output_matrix_filtered" label="${tool.name} on ${on_string}: Matrix Gene Counts filtered"
356 from_work_dir="Solo.out/soloFeatures/filtered/matrix.mtx" > 435 from_work_dir="Solo.out/soloFeatures/filtered/matrix.mtx" >
357 <filter>solo['soloFeatures'] == "Gene" and solo['filter']['filter_type'] != "no_filter" </filter> 436 <filter>solo['soloFeatures'] == "Gene" and solo['filter']['filter_type'] != "no_filter" </filter>
362 <filter>solo['soloFeatures'] == "SJ" </filter> 441 <filter>solo['soloFeatures'] == "SJ" </filter>
363 <expand macro="dbKeyActions" /> 442 <expand macro="dbKeyActions" />
364 </data> 443 </data>
365 <data format="mtx" name="output_matrixGeneFull" label="${tool.name} on ${on_string}: Matrix Full Gene Counts raw" 444 <data format="mtx" name="output_matrixGeneFull" label="${tool.name} on ${on_string}: Matrix Full Gene Counts raw"
366 from_work_dir="Solo.out/soloFeatures/raw/matrix.mtx" > 445 from_work_dir="Solo.out/soloFeatures/raw/matrix.mtx" >
367 <filter>solo['soloFeatures'] == "GeneFull" and solo['filter']['filter_type'] == "no_filter" </filter> 446 <filter>"GeneFull" in solo['soloFeatures'] and solo['filter']['output_raw'] </filter>
368 <expand macro="dbKeyActions" /> 447 <expand macro="dbKeyActions" />
369 </data> 448 </data>
370 <data format="mtx" name="output_matrixGeneFull_filtered" label="${tool.name} on ${on_string}: Matrix Full Gene Counts filtered" 449 <data format="mtx" name="output_matrixGeneFull_filtered" label="${tool.name} on ${on_string}: Matrix Full Gene Counts filtered"
371 from_work_dir="Solo.out/soloFeatures/filtered/matrix.mtx" > 450 from_work_dir="Solo.out/soloFeatures/filtered/matrix.mtx" >
372 <filter>solo['soloFeatures'] == "GeneFull" and solo['filter']['filter_type'] != "no_filter" </filter> 451 <filter>"GeneFull" in solo['soloFeatures'] and solo['filter']['filter_type'] != "no_filter" </filter>
373 <expand macro="dbKeyActions" /> 452 <expand macro="dbKeyActions" />
374 </data> 453 </data>
375 <data format="bam" name="output_BAM" label="${tool.name} on ${on_string}: Alignments" > 454 <data format="bam" name="output_BAM" label="${tool.name} on ${on_string}: Alignments" >
376 <expand macro="dbKeyActions" /> 455 <expand macro="dbKeyActions" />
377 </data> 456 </data>
378 <data format="txt" name="output_stats" label="${tool.name} on ${on_string}: Barcode/Feature Statistic Summaries"/> 457 <data format="txt" name="output_stats" label="${tool.name} on ${on_string}: Barcode/Feature Statistic Summaries"/>
458 <data name="reads_per_gene" format="tabular" label="${tool.name} on ${on_string}: combined reads per gene" from_work_dir="ReadsPerGene.out.tab">
459 <filter>solo['quantModeGene']</filter>
460 <expand macro="dbKeyActions" />
461 <expand macro="outCountActions" />
462 </data>
463 <expand macro="outWigOutputs"/>
379 </outputs> 464 </outputs>
380 <!-- Generating test data that is big enough for STARsolo to detect and small enough 465 <!-- Generating test data that is big enough for STARsolo to detect and small enough
381 for Galaxy to test requires careful modification of input FASTA and GTF data, 466 for Galaxy to test requires careful modification of input FASTA and GTF data,
382 where the length of FASTA cannot exceed the largest position in the GTF file, 467 where the length of FASTA cannot exceed the largest position in the GTF file,
383 regardless of the FASTA starting sequence position. 468 regardless of the FASTA starting sequence position.
384 469
385 A full writeup of how to subset single cell data for use in STARsolo is given 470 A full writeup of how to subset single cell data for use in STARsolo is given
386 here: https://gist.github.com/mtekman/149a7c52fd73e5d8ebe49f5a27b0743d 471 here: https://gist.github.com/mtekman/149a7c52fd73e5d8ebe49f5a27b0743d
387 --> 472 -->
388 <tests> 473 <tests>
389 <test expect_num_outputs="6"> 474 <test expect_num_outputs="7">
475 <!-- test 1 -->
390 <conditional name="refGenomeSource"> 476 <conditional name="refGenomeSource">
391 <param name="geneSource" value="history" /> 477 <param name="geneSource" value="history" />
392 <param name="genomeFastaFiles" value="filtered3.Homo_sapiens.GRCh38.dna.chromosome.21.fa.gz" /> 478 <param name="genomeFastaFiles" value="filtered3.Homo_sapiens.GRCh38.dna.chromosome.21.fa.gz" />
393 <param name="genomeSAindexNbases" value="4" /> 479 <param name="genomeSAindexNbases" value="4" />
394 <param name="sjdbOverhang" value="100" /> 480 <param name="sjdbOverhang" value="100" />
401 <param name="input1" value="pbmc_1k_v2_L001.R1.10k.fastq.gz" ftype="fastqsanger.gz" /> 487 <param name="input1" value="pbmc_1k_v2_L001.R1.10k.fastq.gz" ftype="fastqsanger.gz" />
402 <param name="input2" value="pbmc_1k_v2_L001.R2.10k.fastq.gz" ftype="fastqsanger.gz" /> 488 <param name="input2" value="pbmc_1k_v2_L001.R2.10k.fastq.gz" ftype="fastqsanger.gz" />
403 </conditional> 489 </conditional>
404 <param name="soloCBwhitelist" value="filtered.barcodes.txt" /> 490 <param name="soloCBwhitelist" value="filtered.barcodes.txt" />
405 <conditional name="params"> 491 <conditional name="params">
406 <param name="chemistry" value="CR3" /> 492 <param name="chemistry" value="Cv3" />
407 </conditional> 493 </conditional>
408 <param name="soloUMIdedup" value="1MM_All" /> 494 <conditional name="umidedup">
495 <param name="soloUMIdedup" value="1MM_All" />
496 </conditional>
409 </conditional> 497 </conditional>
410 <section name="solo" > 498 <section name="solo" >
411 <conditional name="filter"> 499 <conditional name="filter">
412 <param name="filter_type" value="no_filter" /> 500 <param name="filter_type" value="no_filter" />
413 </conditional> 501 </conditional>
414 <param name="soloStrand" value="Forward" /> 502 <param name="soloStrand" value="Forward" />
415 <param name="soloFeatures" value="Gene" /> 503 <param name="soloFeatures" value="Gene" />
504 <param name="quantModeGene" value="true" />
416 </section> 505 </section>
417 <output name="output_barcodes" > 506 <output name="output_barcodes" >
418 <assert_contents> 507 <assert_contents>
419 <!-- first and last line --> 508 <!-- first and last line -->
420 <has_line line="AAACCTGAGCGCTCCA" /> 509 <has_line line="AAACCTGAGCGCTCCA" />
421 <has_line line="TTTGGTTAGTGGGCTA" /> 510 <has_line line="TTTGGTTAGTGGGCTA" />
511 <has_n_lines n="394" />
422 </assert_contents> 512 </assert_contents>
423 </output> 513 </output>
424 <output name="output_genes"> 514 <output name="output_genes">
425 <assert_contents> 515 <assert_contents>
426 <has_line_matching expression="ENSG00000279493\s+FP565260\.4\s+Gene\s+Expression" /> 516 <has_line_matching expression="ENSG00000279493\s+FP565260\.4\s+Gene\s+Expression" />
427 <has_line_matching expression="ENSG00000279064\s+FP236315\.1\s+Gene\s+Expression" /> 517 <has_line_matching expression="ENSG00000279064\s+FP236315\.1\s+Gene\s+Expression" />
518 <has_n_lines n="14" />
428 </assert_contents> 519 </assert_contents>
429 </output> 520 </output>
430 <output name="output_matrix" > 521 <output name="output_matrix" >
431 <assert_contents> 522 <assert_contents>
432 <has_line_matching expression="14\s+394\s+7" /> 523 <has_line_matching expression="14\s+394\s+7" />
433 <has_line_matching expression="4\s+381\s+1" /> 524 <has_line_matching expression="4\s+381\s+1" />
525 <has_n_lines n="10" />
434 </assert_contents> 526 </assert_contents>
435 </output> 527 </output>
436 <output name="output_stats" > 528 <output name="output_stats" >
437 <assert_contents> 529 <assert_contents>
438 <has_line_matching expression="\s+nUnmapped\s+5823" /> 530 <has_line_matching expression="\s+noUnmapped\s+5823" />
439 <has_line_matching expression="\s+nUMIs\s+8" /> 531 <has_line_matching expression="\s+yesUMIs\s+8" />
440 </assert_contents> 532 </assert_contents>
441 </output> 533 </output>
442 <output name="output_BAM" value="filtered3.bam" compare="sim_size" delta="600" /> 534 <output name="output_BAM" value="filtered3.bam" compare="sim_size" delta="600" />
535 <output name="reads_per_gene" >
536 <assert_contents>
537 <has_line_matching expression="ENSG00000279493\s+0\s+0\s+0" />
538 <has_line_matching expression="ENSG00000275464\s+38\s+1\s+40" />
539 </assert_contents>
540 </output>
443 </test> 541 </test>
444 <test expect_num_outputs="6"><!-- same as above, but using custom --> 542 <test expect_num_outputs="6">
543 <!-- test 2 -->
544 <!-- same as above, but using custom and no reads_per_gene-->
445 <conditional name="refGenomeSource"> 545 <conditional name="refGenomeSource">
446 <param name="geneSource" value="history" /> 546 <param name="geneSource" value="history" />
447 <param name="genomeFastaFiles" value="filtered3.Homo_sapiens.GRCh38.dna.chromosome.21.fa.gz" /> 547 <param name="genomeFastaFiles" value="filtered3.Homo_sapiens.GRCh38.dna.chromosome.21.fa.gz" />
448 <param name="genomeSAindexNbases" value="4" /> 548 <param name="genomeSAindexNbases" value="4" />
449 <param name="sjdbOverhang" value="100" /> 549 <param name="sjdbOverhang" value="100" />
469 <param name="soloStrand" value="Forward" /> 569 <param name="soloStrand" value="Forward" />
470 <param name="soloFeatures" value="Gene" /> 570 <param name="soloFeatures" value="Gene" />
471 </section> 571 </section>
472 <output name="output_barcodes_filtered" > 572 <output name="output_barcodes_filtered" >
473 <assert_contents> 573 <assert_contents>
574 <!-- first and last line -->
474 <has_line line="ACACCGGTCTAACGGT" /> 575 <has_line line="ACACCGGTCTAACGGT" />
475 <has_line line="TTCTCAATCCACGTTC" /> 576 <has_line line="TTCTCAATCCACGTTC" />
577 <has_n_lines n="7" />
476 </assert_contents> 578 </assert_contents>
477 </output> 579 </output>
478 <output name="output_genes_filtered"> 580 <output name="output_genes_filtered">
479 <assert_contents> 581 <assert_contents>
480 <has_line_matching expression="ENSG00000279493\s+FP565260\.4\s+Gene\s+Expression" /> 582 <has_line_matching expression="ENSG00000279493\s+FP565260\.4\s+Gene\s+Expression" />
481 <has_line_matching expression="ENSG00000279064\s+FP236315\.1\s+Gene\s+Expression" /> 583 <has_line_matching expression="ENSG00000279064\s+FP236315\.1\s+Gene\s+Expression" />
584 <has_n_lines n="14" />
482 </assert_contents> 585 </assert_contents>
483 </output> 586 </output>
484 <output name="output_matrix_filtered" > 587 <output name="output_matrix_filtered" >
485 <assert_contents> 588 <assert_contents>
486 <has_line_matching expression="14\s+7\s+7" /> 589 <has_line_matching expression="14\s+7\s+7" />
487 <has_line_matching expression="4\s+7\s+1" /> 590 <has_line_matching expression="4\s+7\s+1" />
591 <has_n_lines n="10" />
488 </assert_contents> 592 </assert_contents>
489 </output> 593 </output>
490 <output name="output_stats" > 594 <output name="output_stats" >
491 <assert_contents> 595 <assert_contents>
492 <has_line_matching expression="\s+nUnmapped\s+5823" /> 596 <has_line_matching expression="\s+noUnmapped\s+5823" />
493 <has_line_matching expression="\s+nUMIs\s+8" /> 597 <has_line_matching expression="\s+yesUMIs\s+8" />
494 </assert_contents> 598 </assert_contents>
495 </output> 599 </output>
496 <output name="output_BAM" value="filtered3.bam" compare="sim_size" delta="600" /> 600 <output name="output_BAM" value="filtered3.bam" compare="sim_size" delta="600" />
497 </test> 601 </test>
498 <test expect_num_outputs="6"><!-- Multiple repeats test --> 602 <test expect_num_outputs="6">
603 <!-- test 3 -->
604 <!-- Multiple repeats test -->
499 <conditional name="refGenomeSource"> 605 <conditional name="refGenomeSource">
500 <param name="geneSource" value="history" /> 606 <param name="geneSource" value="history" />
501 <param name="genomeFastaFiles" value="filtered3.Homo_sapiens.GRCh38.dna.chromosome.21.fa.gz" /> 607 <param name="genomeFastaFiles" value="filtered3.Homo_sapiens.GRCh38.dna.chromosome.21.fa.gz" />
502 <param name="genomeSAindexNbases" value="4" /> 608 <param name="genomeSAindexNbases" value="4" />
503 <param name="sjdbOverhang" value="100" /> 609 <param name="sjdbOverhang" value="100" />
510 <param name="input1" value="pbmc_1k_v2_L001.R1.10k.fastq.gz,pbmc_1k_v2_L001.R1.10k.fastq.gz,pbmc_1k_v2_L001.R1.10k.fastq.gz" ftype="fastqsanger.gz" /> 616 <param name="input1" value="pbmc_1k_v2_L001.R1.10k.fastq.gz,pbmc_1k_v2_L001.R1.10k.fastq.gz,pbmc_1k_v2_L001.R1.10k.fastq.gz" ftype="fastqsanger.gz" />
511 <param name="input2" value="pbmc_1k_v2_L001.R2.10k.fastq.gz,pbmc_1k_v2_L001.R2.10k.fastq.gz,pbmc_1k_v2_L001.R2.10k.fastq.gz" ftype="fastqsanger.gz" /> 617 <param name="input2" value="pbmc_1k_v2_L001.R2.10k.fastq.gz,pbmc_1k_v2_L001.R2.10k.fastq.gz,pbmc_1k_v2_L001.R2.10k.fastq.gz" ftype="fastqsanger.gz" />
512 </conditional> 618 </conditional>
513 <param name="soloCBwhitelist" value="filtered.barcodes.txt" /> 619 <param name="soloCBwhitelist" value="filtered.barcodes.txt" />
514 <conditional name="params"> 620 <conditional name="params">
515 <param name="chemistry" value="CR3" /> 621 <param name="chemistry" value="Cv3" />
516 </conditional> 622 </conditional>
517 <param name="soloUMIdedup" value="1MM_All" /> 623 <conditional name="umidedup">
624 <param name="soloUMIdedup" value="1MM_All" />
625 </conditional>
518 </conditional> 626 </conditional>
519 <section name="solo" > 627 <section name="solo" >
520 <param name="soloStrand" value="Forward" /> 628 <param name="soloStrand" value="Forward" />
521 <param name="soloFeatures" value="Gene" /> 629 <param name="soloFeatures" value="Gene" />
522 </section> 630 </section>
523 <output name="output_barcodes_filtered" > 631 <output name="output_barcodes_filtered" >
524 <assert_contents> 632 <assert_contents>
525 <has_line line="ACACCGGTCTAACGGT" /> 633 <has_line line="ACACCGGTCTAACGGT" />
526 <has_line line="TTCTCAATCCACGTTC" /> 634 <has_line line="TTCTCAATCCACGTTC" />
527 </assert_contents> 635 <has_n_lines n="7" />
528 </output> 636 </assert_contents>
529 <!-- BAM output is huge, we don't need to test here --> 637 </output>
638 <output name="output_BAM" >
639 <assert_contents>
640 <has_size value="166147" delta="600" />
641 </assert_contents>
642 </output>
530 </test> 643 </test>
531 <test expect_num_outputs="6"> 644 <test expect_num_outputs="10">
645 <!-- test 4 -->
532 <!-- Test with paired collection --> 646 <!-- Test with paired collection -->
533 <conditional name="refGenomeSource"> 647 <conditional name="refGenomeSource">
534 <param name="geneSource" value="history" /> 648 <param name="geneSource" value="history" />
535 <param name="genomeFastaFiles" value="filtered3.Homo_sapiens.GRCh38.dna.chromosome.21.fa.gz" /> 649 <param name="genomeFastaFiles" value="filtered3.Homo_sapiens.GRCh38.dna.chromosome.21.fa.gz" />
536 <param name="genomeSAindexNbases" value="4" /> 650 <param name="genomeSAindexNbases" value="4" />
548 </collection> 662 </collection>
549 </param> 663 </param>
550 </conditional> 664 </conditional>
551 <param name="soloCBwhitelist" value="filtered.barcodes.txt" /> 665 <param name="soloCBwhitelist" value="filtered.barcodes.txt" />
552 <conditional name="params"> 666 <conditional name="params">
553 <param name="chemistry" value="CR3" /> 667 <param name="chemistry" value="Cv3" />
554 </conditional> 668 </conditional>
555 <param name="soloUMIdedup" value="1MM_All" /> 669 <conditional name="umidedup">
670 <param name="soloUMIdedup" value="1MM_All" />
671 </conditional>
556 </conditional> 672 </conditional>
557 <section name="solo" > 673 <section name="solo" >
558 <param name="soloStrand" value="Forward" /> 674 <param name="soloStrand" value="Forward" />
559 <param name="soloFeatures" value="Gene" /> 675 <param name="soloFeatures" value="Gene" />
560 </section> 676 </section>
677 <conditional name="outWig">
678 <param name="outWigType" value="bedGraph" />
679 </conditional>
561 <output name="output_barcodes_filtered" > 680 <output name="output_barcodes_filtered" >
562 <assert_contents> 681 <assert_contents>
563 <has_line line="ACACCGGTCTAACGGT" /> 682 <has_line line="ACACCGGTCTAACGGT" />
564 <has_line line="TTCTCAATCCACGTTC" /> 683 <has_line line="TTCTCAATCCACGTTC" />
684 <has_n_lines n="7" />
565 </assert_contents> 685 </assert_contents>
566 </output> 686 </output>
567 <output name="output_BAM" value="filtered3.bam" compare="sim_size" delta="600" /> 687 <output name="output_BAM" value="filtered3.bam" compare="sim_size" delta="600" />
688 <output name="signal_unique_str1" file="Signal.Unique.str1.out.bg" />
689 <output name="signal_uniquemultiple_str1" file="Signal.UniqueMultiple.str1.out.bg" />
690 <output name="signal_unique_str2" file="Signal.Unique.str2.out.bg" />
691 <output name="signal_uniquemultiple_str2" file="Signal.UniqueMultiple.str2.out.bg" />
568 </test> 692 </test>
569 <test expect_num_outputs="6"> 693 <test expect_num_outputs="9">
570 <!-- Test soloFeatures, soloCBmatchWLtype, soloCellFilter, soloOutFormatFeaturesGeneField3, soloUMIfiltering --> 694 <!-- test 5 -->
695 <!-- Test soloFeatures, soloCBmatchWLtype, soloCellFilter, soloOutFormatFeaturesGeneField3 -->
571 <conditional name="refGenomeSource"> 696 <conditional name="refGenomeSource">
572 <param name="geneSource" value="history" /> 697 <param name="geneSource" value="history" />
573 <param name="genomeFastaFiles" value="filtered3.Homo_sapiens.GRCh38.dna.chromosome.21.fa.gz" /> 698 <param name="genomeFastaFiles" value="filtered3.Homo_sapiens.GRCh38.dna.chromosome.21.fa.gz" />
574 <param name="genomeSAindexNbases" value="4" /> 699 <param name="genomeSAindexNbases" value="4" />
575 <param name="sjdbOverhang" value="100" /> 700 <param name="sjdbOverhang" value="100" />
583 <param name="input2" value="pbmc_1k_v2_L001.R2.10k.fastq.gz" ftype="fastqsanger.gz" /> 708 <param name="input2" value="pbmc_1k_v2_L001.R2.10k.fastq.gz" ftype="fastqsanger.gz" />
584 </conditional> 709 </conditional>
585 <param name="soloCBwhitelist" value="filtered.barcodes.txt" /> 710 <param name="soloCBwhitelist" value="filtered.barcodes.txt" />
586 <param name="soloCBmatchWLtype" value="1MM_multi_pseudocounts" /> 711 <param name="soloCBmatchWLtype" value="1MM_multi_pseudocounts" />
587 <conditional name="params"> 712 <conditional name="params">
588 <param name="chemistry" value="CR3" /> 713 <param name="chemistry" value="Cv3" />
589 </conditional> 714 </conditional>
590 <param name="soloUMIdedup" value="1MM_All" /> 715 <conditional name="umidedup">
716 <param name="soloUMIdedup" value="1MM_All" />
717 </conditional>
591 </conditional> 718 </conditional>
592 <section name="solo" > 719 <section name="solo" >
593 <param name="soloUMIfiltering" value="MultiGeneUMI" />
594 <param name="soloStrand" value="Forward" /> 720 <param name="soloStrand" value="Forward" />
595 <param name="soloFeatures" value="GeneFull" /> 721 <param name="soloFeatures" value="GeneFull" />
596 <conditional name="filter"> 722 <conditional name="filter">
597 <param name="filter_type" value="topcells" /> 723 <param name="filter_type" value="topcells" />
598 <param name="n_cells" value="5" /> 724 <param name="n_cells" value="5" />
725 <param name="output_raw" value="true" />
599 </conditional> 726 </conditional>
600 <param name="soloOutFormatFeaturesGeneField3" value="Dummy Text" /> 727 <param name="soloOutFormatFeaturesGeneField3" value="Dummy Text" />
601 </section> 728 </section>
602 <output name="output_barcodes_filtered" > 729 <output name="output_barcodes_filtered" >
603 <assert_contents> 730 <assert_contents>
604 <!-- first and last line --> 731 <!-- first and last line -->
605 <has_line line="AGACGTTCAAGGCTCC" /> 732 <has_line line="AGACGTTCAAGGCTCC" />
606 <has_line line="TCAACGAAGCTAGTGG" /> 733 <has_line line="TCAACGAAGCTAGTGG" />
734 <has_n_lines n="6" />
607 </assert_contents> 735 </assert_contents>
608 </output> 736 </output>
609 <output name="output_genes_filtered" > 737 <output name="output_genes_filtered" >
610 <assert_contents> 738 <assert_contents>
611 <has_line_matching expression="ENSG00000279493\s+FP565260\.4\s+Dummy\s+Text" /> 739 <has_line_matching expression="ENSG00000279493\s+FP565260\.4\s+Dummy\s+Text" />
612 <has_line_matching expression="ENSG00000279064\s+FP236315\.1\s+Dummy\s+Text" /> 740 <has_line_matching expression="ENSG00000279064\s+FP236315\.1\s+Dummy\s+Text" />
741 <has_n_lines n="14" />
613 </assert_contents> 742 </assert_contents>
614 </output> 743 </output>
615 <output name="output_matrixGeneFull_filtered" > 744 <output name="output_matrixGeneFull_filtered" >
616 <assert_contents> 745 <assert_contents>
617 <has_line_matching expression="14\s+6\s+14" /> 746 <has_line_matching expression="14\s+6\s+14" />
618 <has_line_matching expression="10\s+6\s+1" /> 747 <has_line_matching expression="10\s+6\s+1" />
748 <has_n_lines n="17" />
749 </assert_contents>
750 </output>
751 <output name="output_barcodes" >
752 <assert_contents>
753 <!-- first and last line -->
754 <has_line line="AAACCTGAGCGCTCCA" />
755 <has_line line="TTTGGTTAGTGGGCTA" />
756 <has_n_lines n="394" />
757 </assert_contents>
758 </output>
759 <output name="output_genes">
760 <assert_contents>
761 <has_line_matching expression="ENSG00000279493\s+FP565260\.4\s+Dummy\s+Text" />
762 <has_line_matching expression="ENSG00000279064\s+FP236315\.1\s+Dummy\s+Text" />
763 <has_n_lines n="14" />
764 </assert_contents>
765 </output>
766 <output name="output_matrix" >
767 <assert_contents>
768 <has_line_matching expression="14\s+394\s+195" />
769 <has_line_matching expression="3\s+1\s+1" />
770 <has_n_lines n="198" />
619 </assert_contents> 771 </assert_contents>
620 </output> 772 </output>
621 </test> 773 </test>
622 <test expect_num_outputs="6"> 774 <test expect_num_outputs="6">
775 <!-- test 6 -->
623 <!-- Emptydrops filtering --> 776 <!-- Emptydrops filtering -->
624 <conditional name="refGenomeSource"> 777 <conditional name="refGenomeSource">
625 <param name="geneSource" value="history" /> 778 <param name="geneSource" value="history" />
626 <param name="genomeFastaFiles" value="filtered3.Homo_sapiens.GRCh38.dna.chromosome.21.fa.gz" /> 779 <param name="genomeFastaFiles" value="filtered3.Homo_sapiens.GRCh38.dna.chromosome.21.fa.gz" />
627 <param name="genomeSAindexNbases" value="4" /> 780 <param name="genomeSAindexNbases" value="4" />
635 <param name="input1" value="pbmc_1k_v2_L001.R1.10k.fastq.gz" ftype="fastqsanger.gz" /> 788 <param name="input1" value="pbmc_1k_v2_L001.R1.10k.fastq.gz" ftype="fastqsanger.gz" />
636 <param name="input2" value="pbmc_1k_v2_L001.R2.10k.fastq.gz" ftype="fastqsanger.gz" /> 789 <param name="input2" value="pbmc_1k_v2_L001.R2.10k.fastq.gz" ftype="fastqsanger.gz" />
637 </conditional> 790 </conditional>
638 <param name="soloCBwhitelist" value="filtered.barcodes.txt" /> 791 <param name="soloCBwhitelist" value="filtered.barcodes.txt" />
639 <conditional name="params"> 792 <conditional name="params">
640 <param name="chemistry" value="CR3" /> 793 <param name="chemistry" value="Cv3" />
641 </conditional> 794 </conditional>
642 <param name="soloUMIdedup" value="1MM_All" /> 795 <conditional name="umidedup">
796 <param name="soloUMIdedup" value="1MM_All" />
797 </conditional>
643 </conditional> 798 </conditional>
644 <section name="solo" > 799 <section name="solo" >
645 <conditional name="filter"> 800 <conditional name="filter">
646 <param name="filter_type" value="emptydrops" /> 801 <param name="filter_type" value="emptydrops" />
647 <param name="nExpectedCells" value="5" /> 802 <param name="nExpectedCells" value="5" />
661 <output name="output_barcodes_filtered"> 816 <output name="output_barcodes_filtered">
662 <assert_contents> 817 <assert_contents>
663 <!-- first and last line --> 818 <!-- first and last line -->
664 <has_line line="ACACCGGTCTAACGGT" /> 819 <has_line line="ACACCGGTCTAACGGT" />
665 <has_line line="TTCTCAATCCACGTTC" /> 820 <has_line line="TTCTCAATCCACGTTC" />
821 <has_n_lines n="7" />
666 </assert_contents> 822 </assert_contents>
667 </output> 823 </output>
668 <output name="output_genes_filtered"> 824 <output name="output_genes_filtered">
669 <assert_contents> 825 <assert_contents>
670 <has_line_matching expression="ENSG00000279493\s+FP565260\.4\s+Gene\s+Expression" /> 826 <has_line_matching expression="ENSG00000279493\s+FP565260\.4\s+Gene\s+Expression" />
671 <has_line_matching expression="ENSG00000279064\s+FP236315\.1\s+Gene\s+Expression" /> 827 <has_line_matching expression="ENSG00000279064\s+FP236315\.1\s+Gene\s+Expression" />
828 <has_n_lines n="14" />
672 </assert_contents> 829 </assert_contents>
673 </output> 830 </output>
674 <output name="output_matrix_filtered" > 831 <output name="output_matrix_filtered" >
675 <assert_contents> 832 <assert_contents>
676 <has_line_matching expression="14\s+7\s+7" /> 833 <has_line_matching expression="14\s+7\s+7" />
677 <has_line_matching expression="4\s+7\s+1" /> 834 <has_line_matching expression="4\s+7\s+1" />
835 <has_n_lines n="10" />
678 </assert_contents> 836 </assert_contents>
679 </output> 837 </output>
680 <output name="output_stats" > 838 <output name="output_stats" >
681 <assert_contents> 839 <assert_contents>
682 <has_line_matching expression="\s+nUnmapped\s+5823" /> 840 <has_line_matching expression="\s+noUnmapped\s+5823" />
683 <has_line_matching expression="\s+nUMIs\s+8" /> 841 <has_line_matching expression="\s+yesUMIs\s+8" />
684 </assert_contents> 842 </assert_contents>
685 </output> 843 </output>
686 <output name="output_BAM" value="filtered3.bam" compare="sim_size" delta="600" /> 844 <output name="output_BAM" value="filtered3.bam" compare="sim_size" delta="600" />
687 </test> 845 </test>
688 <test expect_num_outputs="6"> 846 <test expect_num_outputs="6">
847 <!-- test 7 -->
689 <!-- Test soloType CB_UMI_Complex --> 848 <!-- Test soloType CB_UMI_Complex -->
690 <conditional name="refGenomeSource"> 849 <conditional name="refGenomeSource">
691 <param name="geneSource" value="history" /> 850 <param name="geneSource" value="history" />
692 <param name="genomeFastaFiles" value="filtered3.Homo_sapiens.GRCh38.dna.chromosome.21.fa.gz" /> 851 <param name="genomeFastaFiles" value="filtered3.Homo_sapiens.GRCh38.dna.chromosome.21.fa.gz" />
693 <param name="genomeSAindexNbases" value="4" /> 852 <param name="genomeSAindexNbases" value="4" />
720 <param name="umi_end_anchor" value="3" /> 879 <param name="umi_end_anchor" value="3" />
721 <param name="umi_end_anchor_pos" value="14" /> 880 <param name="umi_end_anchor_pos" value="14" />
722 <param name="soloAdapterSequence" value="GAGTGATTGCTTGTGACGCCTT" /> 881 <param name="soloAdapterSequence" value="GAGTGATTGCTTGTGACGCCTT" />
723 <param name="soloAdapterMismatchesNmax" value="1" /> 882 <param name="soloAdapterMismatchesNmax" value="1" />
724 <param name="clipAdapterType" value="CellRanger4" /> 883 <param name="clipAdapterType" value="CellRanger4" />
725 <param name="soloUMIdedup" value="1MM_All" /> 884 <conditional name="umidedup">
885 <param name="soloUMIdedup" value="1MM_All" />
886 </conditional>
726 <param name="soloCBmatchWLtype" value="1MM" /> 887 <param name="soloCBmatchWLtype" value="1MM" />
727 </conditional> 888 </conditional>
728 <output name="output_barcodes_filtered" > 889 <output name="output_barcodes_filtered" >
729 <assert_contents> 890 <assert_contents>
730 <!-- first and last line --> 891 <!-- first and last line -->
731 <has_line line="ACAACGTGG_AAACCTCC" /> 892 <has_line line="ACAACGTGG_AAACCTCC" />
732 <has_line line="ATTCCAGAC_TTCGCTGG" /> 893 <has_line line="ATTCCAGAC_TTCGCTGG" />
894 <has_n_lines n="33" />
733 </assert_contents> 895 </assert_contents>
734 </output> 896 </output>
735 <output name="output_genes_filtered"> 897 <output name="output_genes_filtered">
736 <assert_contents> 898 <assert_contents>
737 <has_line_matching expression="ENSG00000279493\s+FP565260\.4\s+Gene\s+Expression" /> 899 <has_line_matching expression="ENSG00000279493\s+FP565260\.4\s+Gene\s+Expression" />
738 <has_line_matching expression="ENSG00000279064\s+FP236315\.1\s+Gene\s+Expression" /> 900 <has_line_matching expression="ENSG00000279064\s+FP236315\.1\s+Gene\s+Expression" />
901 <has_n_lines n="14" />
739 </assert_contents> 902 </assert_contents>
740 </output> 903 </output>
741 <output name="output_matrix_filtered" > 904 <output name="output_matrix_filtered" >
742 <assert_contents> 905 <assert_contents>
743 <has_line_matching expression="14\s+33\s+36" /> 906 <has_line_matching expression="14\s+33\s+36" />
744 <has_line_matching expression="2\s+33\s+1" /> 907 <has_line_matching expression="2\s+33\s+1" />
908 <has_n_lines n="39" />
745 </assert_contents> 909 </assert_contents>
746 </output> 910 </output>
747 <output name="output_stats" > 911 <output name="output_stats" >
748 <assert_contents> 912 <assert_contents>
749 <has_line_matching expression="\s+nExactMatch\s+791" /> 913 <has_line_matching expression="\s+yesWLmatchExact\s+791" />
750 <has_line_matching expression="\s+nUMIs\s+36" /> 914 <has_line_matching expression="\s+yesUMIs\s+36" />
751 </assert_contents> 915 </assert_contents>
752 </output> 916 </output>
753 </test> 917 </test>
754 <test expect_num_outputs="6"> 918 <test expect_num_outputs="6">
919 <!-- test 8 -->
755 <!-- Test soloType SmartSeq --> 920 <!-- Test soloType SmartSeq -->
756 <conditional name="refGenomeSource"> 921 <conditional name="refGenomeSource">
757 <param name="geneSource" value="history" /> 922 <param name="geneSource" value="history" />
758 <param name="genomeFastaFiles" value="filtered3.Homo_sapiens.GRCh38.dna.chromosome.21.fa.gz" /> 923 <param name="genomeFastaFiles" value="filtered3.Homo_sapiens.GRCh38.dna.chromosome.21.fa.gz" />
759 <param name="genomeSAindexNbases" value="4" /> 924 <param name="genomeSAindexNbases" value="4" />
822 </element> 987 </element>
823 </collection> 988 </collection>
824 </param> 989 </param>
825 </conditional> 990 </conditional>
826 <param name="cell_ids" value="smartseq.cellids.txt" /> 991 <param name="cell_ids" value="smartseq.cellids.txt" />
827 <param name="soloUMIdedup" value="Exact" /> 992 <conditional name="umidedup">
993 <param name="soloUMIdedup" value="Exact" />
994 </conditional>
828 </conditional> 995 </conditional>
829 <section name="solo" > 996 <section name="solo" >
830 <param name="soloStrand" value="Unstranded" /> 997 <param name="soloStrand" value="Unstranded" />
831 <conditional name="filter"> 998 <conditional name="filter">
832 <param name="filter_type" value="topcells" /> 999 <param name="filter_type" value="topcells" />
835 </section> 1002 </section>
836 <output name="output_barcodes_filtered" > 1003 <output name="output_barcodes_filtered" >
837 <assert_contents> 1004 <assert_contents>
838 <has_line line="CSC6_D02" /> 1005 <has_line line="CSC6_D02" />
839 <not_has_text text="MGH26_A02" /> 1006 <not_has_text text="MGH26_A02" />
1007 <has_n_lines n="3" />
840 </assert_contents> 1008 </assert_contents>
841 </output> 1009 </output>
842 <output name="output_genes_filtered"> 1010 <output name="output_genes_filtered">
843 <assert_contents> 1011 <assert_contents>
844 <has_line_matching expression="ENSG00000279493\s+FP565260\.4\s+Gene\s+Expression" /> 1012 <has_line_matching expression="ENSG00000279493\s+FP565260\.4\s+Gene\s+Expression" />
845 <has_line_matching expression="ENSG00000279064\s+FP236315\.1\s+Gene\s+Expression" /> 1013 <has_line_matching expression="ENSG00000279064\s+FP236315\.1\s+Gene\s+Expression" />
1014 <has_n_lines n="14" />
846 </assert_contents> 1015 </assert_contents>
847 </output> 1016 </output>
848 <output name="output_matrix_filtered" > 1017 <output name="output_matrix_filtered" >
849 <assert_contents> 1018 <assert_contents>
850 <has_line_matching expression="14\s+3\s+10" /> 1019 <has_line_matching expression="14\s+3\s+10" />
851 <has_line_matching expression="12\s+3\s+1" /> 1020 <has_line_matching expression="12\s+3\s+1" />
1021 <has_n_lines n="13" />
852 </assert_contents> 1022 </assert_contents>
853 </output> 1023 </output>
854 <output name="output_stats" > 1024 <output name="output_stats" >
855 <assert_contents> 1025 <assert_contents>
856 <has_line_matching expression="\s+nExactMatch\s+9000" /> 1026 <has_line_matching expression="\s+yesWLmatchExact\s+9000" />
857 <has_line_matching expression="\s+nUMIs\s+32" /> 1027 <has_line_matching expression="\s+yesUMIs\s+32" />
1028 </assert_contents>
1029 </output>
1030 </test>
1031 <test expect_num_outputs="6">
1032 <!-- test 9 -->
1033 <!-- Test outSAMattributes -->
1034 <conditional name="refGenomeSource">
1035 <param name="geneSource" value="history" />
1036 <param name="genomeFastaFiles" value="filtered3.Homo_sapiens.GRCh38.dna.chromosome.21.fa.gz" />
1037 <param name="genomeSAindexNbases" value="4" />
1038 <param name="sjdbOverhang" value="100" />
1039 <param name="sjdbGTFfile" value="filtered3.Homo_sapiens.GRCh38.100.chr21.gtf" ftype="gtf"/>
1040 </conditional>
1041 <conditional name="sc" >
1042 <param name="solo_type" value="CB_UMI_Simple" />
1043 <conditional name="input_types">
1044 <param name="use" value="repeat" />
1045 <param name="input1" value="pbmc_1k_v2_L001.R1.10k.fastq.gz" ftype="fastqsanger.gz" />
1046 <param name="input2" value="pbmc_1k_v2_L001.R2.10k.fastq.gz" ftype="fastqsanger.gz" />
1047 </conditional>
1048 <param name="soloCBwhitelist" value="filtered.barcodes.txt" />
1049 <conditional name="params">
1050 <param name="chemistry" value="Cv3" />
1051 </conditional>
1052 <conditional name="umidedup">
1053 <param name="soloUMIdedup" value="1MM_All" />
1054 </conditional>
1055 </conditional>
1056 <section name="solo" >
1057 <conditional name="filter">
1058 <param name="filter_type" value="no_filter" />
1059 </conditional>
1060 <param name="soloStrand" value="Forward" />
1061 <param name="soloFeatures" value="Gene" />
1062 <param name="outSAMattributes" value="NH,HI,AS,nM,GX,GN,CB,UB" />
1063 </section>
1064 <output name="output_barcodes" >
1065 <assert_contents>
1066 <!-- first and last line -->
1067 <has_line line="AAACCTGAGCGCTCCA" />
1068 <has_line line="TTTGGTTAGTGGGCTA" />
1069 <has_n_lines n="394" />
1070 </assert_contents>
1071 </output>
1072 <output name="output_genes">
1073 <assert_contents>
1074 <has_line_matching expression="ENSG00000279493\s+FP565260\.4\s+Gene\s+Expression" />
1075 <has_line_matching expression="ENSG00000279064\s+FP236315\.1\s+Gene\s+Expression" />
1076 <has_n_lines n="14" />
1077 </assert_contents>
1078 </output>
1079 <output name="output_matrix" >
1080 <assert_contents>
1081 <has_line_matching expression="14\s+394\s+7" />
1082 <has_line_matching expression="4\s+381\s+1" />
1083 <has_n_lines n="10" />
1084 </assert_contents>
1085 </output>
1086 <output name="output_stats" >
1087 <assert_contents>
1088 <has_line_matching expression="\s+noUnmapped\s+5823" />
1089 <has_line_matching expression="\s+yesUMIs\s+8" />
1090 </assert_contents>
1091 </output>
1092 <output name="output_BAM" >
1093 <assert_contents>
1094 <has_size value="153108" delta="600" />
1095 </assert_contents>
1096 </output>
1097 </test>
1098 <test expect_num_outputs="6">
1099 <!-- test 10 -->
1100 <!-- Test soloFeatures -->
1101 <conditional name="refGenomeSource">
1102 <param name="geneSource" value="history" />
1103 <param name="genomeFastaFiles" value="filtered3.Homo_sapiens.GRCh38.dna.chromosome.21.fa.gz" />
1104 <param name="genomeSAindexNbases" value="4" />
1105 <param name="sjdbOverhang" value="100" />
1106 <param name="sjdbGTFfile" value="filtered3.Homo_sapiens.GRCh38.100.chr21.gtf" ftype="gtf"/>
1107 </conditional>
1108 <conditional name="sc" >
1109 <param name="solo_type" value="CB_UMI_Simple" />
1110 <conditional name="input_types">
1111 <param name="use" value="repeat" />
1112 <param name="input1" value="pbmc_1k_v2_L001.R1.10k.fastq.gz" ftype="fastqsanger.gz" />
1113 <param name="input2" value="pbmc_1k_v2_L001.R2.10k.fastq.gz" ftype="fastqsanger.gz" />
1114 </conditional>
1115 <param name="soloCBwhitelist" value="filtered.barcodes.txt" />
1116 <param name="soloCBmatchWLtype" value="1MM_multi_pseudocounts" />
1117 <conditional name="params">
1118 <param name="chemistry" value="Cv3" />
1119 </conditional>
1120 <conditional name="umidedup">
1121 <param name="soloUMIdedup" value="1MM_CR" />
1122 <param name="soloUMIfiltering" value="MultiGeneUMI" />
1123 </conditional>
1124 </conditional>
1125 <section name="solo" >
1126 <param name="soloStrand" value="Forward" />
1127 <param name="soloFeatures" value="GeneFull_ExonOverIntron" />
1128 <conditional name="filter">
1129 <param name="filter_type" value="no_filter" />
1130 </conditional>
1131 <param name="soloOutFormatFeaturesGeneField3" value="Dummy Text" />
1132 </section>
1133 <output name="output_barcodes" >
1134 <assert_contents>
1135 <!-- first and last line -->
1136 <has_line line="AAACCTGAGCGCTCCA" />
1137 <has_line line="TTTGGTTAGTGGGCTA" />
1138 <has_n_lines n="394" />
1139 </assert_contents>
1140 </output>
1141 <output name="output_genes" >
1142 <assert_contents>
1143 <has_line_matching expression="ENSG00000279493\s+FP565260\.4\s+Dummy\s+Text" />
1144 <has_line_matching expression="ENSG00000279064\s+FP236315\.1\s+Dummy\s+Text" />
1145 <has_n_lines n="14" />
1146 </assert_contents>
1147 </output>
1148 <output name="output_matrixGeneFull" >
1149 <assert_contents>
1150 <has_line_matching expression="14\s+394\s+104" />
1151 <has_line_matching expression="10\s+2\s+1" />
1152 <has_n_lines n="107" />
858 </assert_contents> 1153 </assert_contents>
859 </output> 1154 </output>
860 </test> 1155 </test>
861 </tests> 1156 </tests>
862 <help><![CDATA[ 1157 <help><![CDATA[