Mercurial > repos > iuc > bcftools_norm
comparison bcftools_norm.xml @ 26:051e5060b390 draft default tip
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/bcftools commit f6efda26965eb73c9107d367fd5ffdf246ed0dbc
| author | iuc |
|---|---|
| date | Tue, 02 Dec 2025 07:55:48 +0000 |
| parents | 36b301c20b95 |
| children |
comparison
equal
deleted
inserted
replaced
| 25:36b301c20b95 | 26:051e5060b390 |
|---|---|
| 2 <description>Left-align and normalize indels; check if REF alleles match the reference; split multiallelic sites into multiple rows; recover multiallelics from multiple rows</description> | 2 <description>Left-align and normalize indels; check if REF alleles match the reference; split multiallelic sites into multiple rows; recover multiallelics from multiple rows</description> |
| 3 <macros> | 3 <macros> |
| 4 <token name="@EXECUTABLE@">norm</token> | 4 <token name="@EXECUTABLE@">norm</token> |
| 5 <import>macros.xml</import> | 5 <import>macros.xml</import> |
| 6 </macros> | 6 </macros> |
| 7 <expand macro="bio_tools" /> | 7 <expand macro="bio_tools"/> |
| 8 <expand macro="requirements"> | 8 <expand macro="requirements"> |
| 9 <expand macro="samtools_requirement"/> | 9 <expand macro="samtools_requirement"/> |
| 10 <!-- gawk only required for current bcftools norm bug workaround | |
| 11 Remove once fixed (see command section below --> | |
| 12 <requirement type="package" version="5.0.1">gawk</requirement> | |
| 13 </expand> | 10 </expand> |
| 14 <expand macro="version_command" /> | 11 <expand macro="version_command"/> |
| 15 <command detect_errors="aggressive"><![CDATA[ | 12 <command detect_errors="aggressive"><![CDATA[ |
| 16 @PREPARE_ENV@ | |
| 17 @PREPARE_INPUT_FILE@ | 13 @PREPARE_INPUT_FILE@ |
| 18 #set $section = $reference_source | 14 #set $section = $reference_source |
| 19 @PREPARE_FASTA_REF@ | 15 @PREPARE_FASTA_REF@ |
| 20 | |
| 21 ## The next two lines are a workaround for a bug in bcftools norm up to version | |
| 22 ## 1.9, which caused indel normalization to be case-sensitive | |
| 23 ## see: | |
| 24 ## https://github.com/samtools/bcftools/commit/65b211da1f5cdbf1c7c11eb610481a736fa88bda | |
| 25 ## https://github.com/samtools/bcftools/commit/77b0a27a156803e382d60651ff94ea0bd95fad0f | |
| 26 ## With the next release of bcftools, this should be fixed and, at that point, | |
| 27 ## the time-consuming on-the-fly uppercasing should be removed again. | |
| 28 awk '{ if ($0 !~ />/) {print toupper($0)} else {print $0} }' '$input_fa_ref' > ref_upper.fa && | |
| 29 #set $input_fa_ref = 'ref_upper.fa' | |
| 30 | 16 |
| 31 #set $section = $sec_restrict | 17 #set $section = $sec_restrict |
| 32 @PREPARE_TARGETS_FILE@ | 18 @PREPARE_TARGETS_FILE@ |
| 33 @PREPARE_REGIONS_FILE@ | 19 @PREPARE_REGIONS_FILE@ |
| 34 | 20 |
| 39 --check-ref $check_ref | 25 --check-ref $check_ref |
| 40 $normalize_indels | 26 $normalize_indels |
| 41 #if $rm_dup: | 27 #if $rm_dup: |
| 42 --rm-dup "$rm_dup" | 28 --rm-dup "$rm_dup" |
| 43 #end if | 29 #end if |
| 44 $atomize | 30 $atomization |
| 45 #if $old_rec_tag | 31 #if $old_rec_tag |
| 46 --old-rec-tag '$old_rec_tag' | 32 --old-rec-tag '$old_rec_tag' |
| 47 #end if | 33 #end if |
| 48 #if $multiallelics.mode: | 34 #if $multiallelics.mode: |
| 49 --multiallelics '${multiallelics.mode}${multiallelics.multiallelic_types}' | 35 --multiallelics '${multiallelics.mode}${multiallelics.multiallelic_types}' |
| 50 #end if | 36 #end if |
| 51 #if $multiallelics.mode == '+': | 37 #if $multiallelics.mode == '+': |
| 52 ${multiallelics.strict_filter} | 38 ${multiallelics.strict_filter} |
| 53 #end if | 39 #end if |
| 54 | |
| 55 #if $sec_default.site_win: | 40 #if $sec_default.site_win: |
| 56 --site-win ${sec_default.site_win} | 41 --site-win ${sec_default.site_win} |
| 42 #end if | |
| 43 --sort ${sec_default.sort} | |
| 44 #if str($sec_filter_norm.include): | |
| 45 --include '${sec_filter_norm.include}' | |
| 46 #end if | |
| 47 #if str($sec_filter_norm.exclude): | |
| 48 --exclude '${sec_filter_norm.exclude}' | |
| 57 #end if | 49 #end if |
| 58 | 50 |
| 59 #set $section = $sec_restrict | 51 #set $section = $sec_restrict |
| 60 @REGIONS@ | 52 @REGIONS@ |
| 61 @TARGETS@ | 53 @TARGETS@ |
| 67 @INPUT_FILE@ | 59 @INPUT_FILE@ |
| 68 > '$output_file' | 60 > '$output_file' |
| 69 ]]> | 61 ]]> |
| 70 </command> | 62 </command> |
| 71 <inputs> | 63 <inputs> |
| 72 <expand macro="macro_input" /> | 64 <expand macro="macro_input"/> |
| 73 <expand macro="macro_fasta_ref" /> | 65 <expand macro="macro_fasta_ref"/> |
| 74 <param name="check_ref" type="select" display="radio" | 66 <param name="check_ref" type="select" display="radio" label="When any REF allele does not match the reference genome base" help="Warnings about REF mismatches will be emitted to the standard error (stderr) stream, and it is recommended to check there for problems if you choose not to exit with an error immediately upon encountering a mismatch."> |
| 75 label="When any REF allele does not match the reference genome base" | |
| 76 help="Warnings about REF mismatches will be emitted to the standard | |
| 77 error (stderr) stream, and it is recommended to check there for | |
| 78 problems if you choose not to exit with an error immediately upon | |
| 79 encountering a mismatch."> | |
| 80 <option value="w">ignore the problem (-w)</option> | 67 <option value="w">ignore the problem (-w)</option> |
| 81 <option value="wx">exclude the variant record from the output (-wx)</option> | 68 <option value="wx">exclude the variant record from the output (-wx)</option> |
| 82 <option value="ws">fix the variant record using the reference genome information (-ws)</option> | 69 <option value="ws">fix the variant record using the reference genome information (-ws)</option> |
| 83 <option value="e">exit with an error (-e)</option> | 70 <option value="e">exit with an error (-e)</option> |
| 84 </param> | 71 </param> |
| 85 <param argument="--atomize" type="boolean" truevalue="--atomize" falsevalue="" checked="false" | 72 <param name="atomization" type="select" display="radio" label="Atomize" help="Decompose complex variants (e.g. MNVs become consecutive SNVs)"> |
| 86 label="Atomize" help="Decompose complex variants (e.g. MNVs become consecutive SNVs)" /> | 73 <option value="">Do not atomize</option> |
| 87 <param argument="--do-not-normalize" name="normalize_indels" type="boolean" truevalue="" falsevalue="--do-not-normalize" checked="false" | 74 <option value="--atomize">Atomize and use * ALT allele for proper genotype representation (--atomize)</option> |
| 88 label="Left-align and normalize indels?" /> | 75 <option value="--atomize --atom-overlaps .">Atomize and accept missing genotype information (legacy behavior; --atomize --atom-overlaps .)</option> |
| 76 </param> | |
| 77 <param argument="--do-not-normalize" name="normalize_indels" type="boolean" truevalue="" falsevalue="--do-not-normalize" checked="false" label="Left-align and normalize indels?"/> | |
| 89 <param argument="--old-rec-tag" type="text" value="" optional="true" label="Annotate modified records with INFO/STR indicating the original variant"> | 78 <param argument="--old-rec-tag" type="text" value="" optional="true" label="Annotate modified records with INFO/STR indicating the original variant"> |
| 90 <sanitizer invalid_char=""> | 79 <sanitizer invalid_char=""> |
| 91 <valid initial="string.letters,string.digits"> | 80 <valid initial="string.letters,string.digits"> |
| 92 <add value="_" /> | 81 <add value="_"/> |
| 93 <add value="/" /> | 82 <add value="/"/> |
| 94 </valid> | 83 </valid> |
| 95 </sanitizer> | 84 </sanitizer> |
| 96 <validator type="regex">[0-9a-zA-Z_/]+</validator> | 85 <validator type="regex">[0-9a-zA-Z_/]+</validator> |
| 97 </param> | 86 </param> |
| 98 <param name="rm_dup" type="select" display="radio" | 87 <param name="rm_dup" type="select" display="radio" label="Perform deduplication for the folowing types of variant records"> |
| 99 label="Perform deduplication for the folowing types of variant records"> | |
| 100 <option value="">do not deduplicate any records</option> | 88 <option value="">do not deduplicate any records</option> |
| 101 <option value="snps">snps</option> | 89 <option value="snps">snps</option> |
| 102 <option value="indels">indels</option> | 90 <option value="indels">indels</option> |
| 103 <option value="both">both</option> | 91 <option value="both">both</option> |
| 104 <option value="any">any</option> | 92 <option value="any">any</option> |
| 105 </param> | 93 </param> |
| 106 <conditional name="multiallelics"> | 94 <conditional name="multiallelics"> |
| 107 <param name="mode" type="select" label="~multiallelics"> | 95 <param name="mode" type="select" label="~multiallelics"> |
| 108 <option value="">preserve multiallelic/biallelic sites</option> | 96 <option value="">preserve multiallelic/biallelic sites</option> |
| 109 <option value="-">split multiallelic sites into biallelic records (-)</option> | 97 <option value="-">split multiallelic sites into biallelic records (-)</option> |
| 110 <option value="+">join biallelic sites into multiallelic records (+)</option> | 98 <option value="+">join biallelic sites into multiallelic records (+)</option> |
| 111 </param> | 99 </param> |
| 112 <when value="" /> | 100 <when value=""/> |
| 113 <when value="-"> | 101 <when value="-"> |
| 114 <param name="multiallelic_types" type="select" display="radio" | 102 <param name="multiallelic_types" type="select" display="radio" label="split the following variant types"> |
| 115 label="split the following variant types"> | |
| 116 <option value="snps">SNPs</option> | 103 <option value="snps">SNPs</option> |
| 117 <option value="indels">indels</option> | 104 <option value="indels">indels</option> |
| 118 <option value="both" selected="true">both</option> | 105 <option value="both" selected="true">both</option> |
| 119 </param> | 106 </param> |
| 120 </when> | 107 </when> |
| 121 <when value="+"> | 108 <when value="+"> |
| 122 <param name="multiallelic_types" type="select" display="radio" | 109 <param name="multiallelic_types" type="select" display="radio" label="Merge the following variant types"> |
| 123 label="merge the following variant types"> | |
| 124 <option value="snps">SNPs</option> | 110 <option value="snps">SNPs</option> |
| 125 <option value="indels">indels</option> | 111 <option value="indels">indels</option> |
| 126 <option value="both" selected="true">SNPs and indels, but keep variants of the two types separate (both)</option> | 112 <option value="both" selected="true">SNPs and indels, but keep variants of the two types separate (both)</option> |
| 127 <option value="any">SNPs and indels, and merge variant records of different types (any)</option> | 113 <option value="any">SNPs and indels, and merge variant records of different types (any)</option> |
| 128 </param> | 114 </param> |
| 129 <param name="strict_filter" type="boolean" truevalue="--strict-filter" falsevalue="" | 115 <param name="strict_filter" type="boolean" truevalue="--strict-filter" falsevalue="" label="Strict Filter" help="merged site is PASS only if all sites being merged PASS"/> |
| 130 label="Strict Filter" | |
| 131 help="merged site is PASS only if all sites being merged PASS" /> | |
| 132 </when> | 116 </when> |
| 133 </conditional> | 117 </conditional> |
| 134 <section name="sec_restrict" expanded="false" title="Restrict all operations to"> | 118 <section name="sec_restrict" expanded="false" title="Restrict all operations to"> |
| 135 <expand macro="macro_restrict" type="region" label_type="Region" /> | 119 <expand macro="macro_region_restrict"/> |
| 136 <expand macro="macro_restrict" type="target" label_type="Target"> | 120 <expand macro="macro_target_restrict"/> |
| 137 <expand macro="macro_invert_targets" /> | |
| 138 </expand> | |
| 139 </section> | 121 </section> |
| 140 | |
| 141 <section name="sec_default" expanded="false" title="Other Options"> | 122 <section name="sec_default" expanded="false" title="Other Options"> |
| 142 <param name="site_win" type="integer" label="Site Window" value="1000" optional="True" | 123 <param name="site_win" type="integer" label="Site Window" value="1000" optional="True" help="(-w, --site-win) Buffer for sorting lines which changed position during realignment"/> |
| 143 help="(-w, --site-win) Buffer for sorting lines which changed position during realignment" /> | 124 <param argument="--sort" type="select" label="Sort normalized allele order" help="Select the sort order for output records after normalization."> |
| 125 <option value="pos" selected="true">Chromosome then position (pos)</option> | |
| 126 <option value="lex">Lexicographical allele order (lex)</option> | |
| 127 </param> | |
| 144 </section> | 128 </section> |
| 145 <expand macro="macro_select_output_type" /> | 129 <section name="sec_filter_norm" expanded="false" title="Normalize only selected records"> |
| 130 <param name="include" type="text" optional="true" label="Include (normalize only matching records)" help="Expression evaluated before normalization to select records to normalize"> | |
| 131 <expand macro="macro_include_exclude_validate_sanitize"/> | |
| 132 </param> | |
| 133 <param name="exclude" type="text" optional="true" label="Exclude (skip normalization for matching records)" help="Expression evaluated before normalization to skip records"> | |
| 134 <expand macro="macro_include_exclude_validate_sanitize"/> | |
| 135 </param> | |
| 136 </section> | |
| 137 <expand macro="macro_select_output_type"/> | |
| 146 </inputs> | 138 </inputs> |
| 147 <outputs> | 139 <outputs> |
| 148 <expand macro="macro_vcf_output"/> | 140 <expand macro="macro_vcf_output"/> |
| 149 </outputs> | 141 </outputs> |
| 150 <tests> | 142 <tests> |
| 151 <test> | 143 <test> |
| 152 <param name="input_file" ftype="vcf" value="norm.vcf" /> | 144 <param name="input_file" ftype="vcf" value="norm.vcf"/> |
| 153 <expand macro="test_using_reference" ref="norm.fa" /> | 145 <expand macro="test_using_reference" ref="norm.fa"/> |
| 154 <param name="normalize_indels" value="true" /> | 146 <param name="normalize_indels" value="true"/> |
| 155 <param name="output_type" value="v" /> | 147 <param name="output_type" value="v"/> |
| 156 <output name="output_file"> | 148 <output name="output_file"> |
| 157 <assert_contents> | 149 <assert_contents> |
| 158 <has_text text="T,TAACCCTA" /> | 150 <has_text text="T,TAACCCTA"/> |
| 159 <not_has_text text="TAA,TAACCCTAAA" /> | 151 <not_has_text text="TAA,TAACCCTAAA"/> |
| 160 </assert_contents> | 152 </assert_contents> |
| 161 </output> | 153 </output> |
| 162 </test> | 154 </test> |
| 163 | 155 <test> |
| 164 <test> | 156 <param name="input_file" ftype="vcf" dbkey="?" value="norm.vcf"/> |
| 165 <param name="input_file" ftype="vcf" dbkey="?" value="norm.vcf" /> | 157 <expand macro="test_using_reference" select_from="cached" ref="norm"/> |
| 166 <expand macro="test_using_reference" select_from="cached" ref="norm" /> | 158 <param name="normalize_indels" value="true"/> |
| 167 <param name="normalize_indels" value="true" /> | 159 <param name="output_type" value="v"/> |
| 168 <param name="output_type" value="v" /> | 160 <output name="output_file"> |
| 169 <output name="output_file"> | 161 <assert_contents> |
| 170 <assert_contents> | 162 <has_text text="T,TAACCCTA"/> |
| 171 <has_text text="T,TAACCCTA" /> | 163 <not_has_text text="TAA,TAACCCTAAA"/> |
| 172 <not_has_text text="TAA,TAACCCTAAA" /> | 164 </assert_contents> |
| 173 </assert_contents> | 165 </output> |
| 174 </output> | 166 </test> |
| 175 </test> | 167 <test> |
| 176 | 168 <param name="input_file" ftype="vcf" value="norm.split.vcf"/> |
| 177 <test> | 169 <expand macro="test_using_reference" ref="norm.fa"/> |
| 178 <param name="input_file" ftype="vcf" value="norm.split.vcf" /> | 170 <conditional name="multiallelics"> |
| 179 <expand macro="test_using_reference" ref="norm.fa" /> | 171 <param name="mode" value="-"/> |
| 180 <conditional name="multiallelics"> | 172 </conditional> |
| 181 <param name="mode" value="-" /> | 173 <param name="output_type" value="v"/> |
| 182 </conditional> | 174 <output name="output_file"> |
| 183 <param name="output_type" value="v" /> | 175 <assert_contents> |
| 184 <output name="output_file"> | 176 <not_has_text text="TAA,TAACCCTAAA"/> |
| 185 <assert_contents> | |
| 186 <not_has_text text="TAA,TAACCCTAAA" /> | |
| 187 <has_text_matching expression="1\t105\t.\tTAAACCCTAAA\tTAA\t"/> | 177 <has_text_matching expression="1\t105\t.\tTAAACCCTAAA\tTAA\t"/> |
| 188 <has_text_matching expression="1\t105\t.\tTAAACCCTAAA\tTAACCCTAAA\t"/> | 178 <has_text_matching expression="1\t105\t.\tTAAACCCTAAA\tTAACCCTAAA\t"/> |
| 189 </assert_contents> | 179 </assert_contents> |
| 190 </output> | 180 </output> |
| 191 </test> | 181 </test> |
| 192 | 182 <test> |
| 193 <test> | 183 <param name="input_file" ftype="vcf" value="norm.split.vcf"/> |
| 194 <param name="input_file" ftype="vcf" value="norm.split.vcf" /> | 184 <expand macro="test_using_reference" ref="norm.fa"/> |
| 195 <expand macro="test_using_reference" ref="norm.fa" /> | 185 <param name="normalize_indels" value="true"/> |
| 196 <param name="normalize_indels" value="true" /> | 186 <conditional name="multiallelics"> |
| 197 <conditional name="multiallelics"> | 187 <param name="mode" value="-"/> |
| 198 <param name="mode" value="-" /> | 188 </conditional> |
| 199 </conditional> | 189 <param name="output_type" value="v"/> |
| 200 <param name="output_type" value="v" /> | 190 <output name="output_file"> |
| 201 <output name="output_file"> | 191 <assert_contents> |
| 202 <assert_contents> | 192 <not_has_text text="TAA,TAACCCTAAA"/> |
| 203 <not_has_text text="TAA,TAACCCTAAA" /> | |
| 204 <has_text_matching expression="1\t105\t.\tTAAACCCTA\tT\t"/> | 193 <has_text_matching expression="1\t105\t.\tTAAACCCTA\tT\t"/> |
| 205 <has_text_matching expression="1\t105\t.\tTA\tT\t"/> | 194 <has_text_matching expression="1\t105\t.\tTA\tT\t"/> |
| 206 </assert_contents> | 195 </assert_contents> |
| 207 </output> | 196 </output> |
| 208 </test> | 197 </test> |
| 209 | 198 <test> |
| 210 <test> | 199 <param name="input_file" ftype="vcf" value="norm.merge.vcf"/> |
| 211 <param name="input_file" ftype="vcf" value="norm.merge.vcf" /> | 200 <expand macro="test_using_reference" ref="norm.fa"/> |
| 212 <expand macro="test_using_reference" ref="norm.fa" /> | 201 <conditional name="multiallelics"> |
| 213 <conditional name="multiallelics"> | 202 <param name="mode" value="+"/> |
| 214 <param name="mode" value="+" /> | 203 </conditional> |
| 215 </conditional> | 204 <param name="output_type" value="v"/> |
| 216 <param name="output_type" value="v" /> | 205 <output name="output_file"> |
| 217 <output name="output_file"> | 206 <assert_contents> |
| 218 <assert_contents> | 207 <has_text text="TAA,TAACCCTAAA"/> |
| 219 <has_text text="TAA,TAACCCTAAA" /> | |
| 220 <has_text_matching expression="2\t114\t.\tTC\tTTCC,TTC\t999\tFAIL"/> | 208 <has_text_matching expression="2\t114\t.\tTC\tTTCC,TTC\t999\tFAIL"/> |
| 221 </assert_contents> | 209 </assert_contents> |
| 222 </output> | 210 </output> |
| 223 </test> | 211 </test> |
| 224 <test> | 212 <test> |
| 225 <param name="input_file" ftype="vcf" value="norm.merge.vcf" /> | 213 <param name="input_file" ftype="vcf" value="norm.merge.vcf"/> |
| 226 <expand macro="test_using_reference" ref="norm.fa" /> | 214 <expand macro="test_using_reference" ref="norm.fa"/> |
| 227 <conditional name="multiallelics"> | 215 <conditional name="multiallelics"> |
| 228 <param name="mode" value="+" /> | 216 <param name="mode" value="+"/> |
| 229 <param name="strict_filter" value="true" /> | 217 <param name="strict_filter" value="true"/> |
| 230 </conditional> | 218 </conditional> |
| 231 <param name="output_type" value="v" /> | 219 <param name="output_type" value="v"/> |
| 232 <output name="output_file"> | 220 <output name="output_file"> |
| 233 <assert_contents> | 221 <assert_contents> |
| 234 <has_text text="TAA,TAACCCTAAA" /> | 222 <has_text text="TAA,TAACCCTAAA"/> |
| 235 <has_text_matching expression="2\t114\t.\tTC\tTTCC,TTC\t999\tPASS"/> | 223 <has_text_matching expression="2\t114\t.\tTC\tTTCC,TTC\t999\tPASS"/> |
| 236 </assert_contents> | 224 </assert_contents> |
| 237 </output> | 225 </output> |
| 238 </test> | 226 </test> |
| 239 | 227 <test> |
| 240 <test> | 228 <param name="input_file" ftype="vcf" value="norm.setref.vcf"/> |
| 241 <param name="input_file" ftype="vcf" value="norm.setref.vcf" /> | 229 <expand macro="test_using_reference" ref="norm.fa"/> |
| 242 <expand macro="test_using_reference" ref="norm.fa" /> | 230 <param name="check_ref" value="ws"/> |
| 243 <param name="check_ref" value="ws" /> | 231 <param name="output_type" value="v"/> |
| 244 <param name="output_type" value="v" /> | |
| 245 <output name="output_file"> | 232 <output name="output_file"> |
| 246 <assert_contents> | 233 <assert_contents> |
| 247 <has_text_matching expression="2\t101\t.\tA\tc\t999\tPASS"/> | 234 <has_text_matching expression="2\t101\t.\tA\tc\t999\tPASS"/> |
| 248 <has_text_matching expression="2\t105\t.\tT\t<DEL>\t999\tPASS"/> | 235 <has_text_matching expression="2\t105\t.\tT\t<DEL>\t999\tPASS"/> |
| 249 </assert_contents> | 236 </assert_contents> |
| 250 </output> | 237 </output> |
| 251 </test> | 238 </test> |
| 252 | |
| 253 <!-- Test atomize option --> | 239 <!-- Test atomize option --> |
| 254 <test> | 240 <test> |
| 255 <param name="input_file" ftype="vcf" value="norm.split.vcf" /> | 241 <param name="input_file" ftype="vcf" value="norm.split.vcf"/> |
| 256 <expand macro="test_using_reference" ref="norm.fa" /> | 242 <expand macro="test_using_reference" ref="norm.fa"/> |
| 257 <param name="normalize_indels" value="true" /> | 243 <param name="normalize_indels" value="true"/> |
| 258 <conditional name="multiallelics"> | 244 <conditional name="multiallelics"> |
| 259 <param name="mode" value="-" /> | 245 <param name="mode" value="-snps"/> |
| 260 </conditional> | 246 </conditional> |
| 261 <param name="atomize" value="true"/> | 247 <param name="atomization" value="--atomize --atom-overlaps ."/> |
| 262 <param name="output_type" value="v" /> | 248 <param name="output_type" value="v"/> |
| 263 <output name="output_file"> | 249 <output name="output_file"> |
| 264 <assert_contents> | 250 <assert_contents> |
| 265 <not_has_text text="TAA,TAACCCTAAA" /> | 251 <not_has_text text="TAA,TAACCCTAAA"/> |
| 266 <has_text_matching expression="1\t105\t.\tTAAACCCTA\tT\t"/> | 252 <has_text_matching expression="1\t105\t.\tTAAACCCTA\tT\t"/> |
| 267 <has_text_matching expression="1\t105\t.\tTA\tT\t"/> | 253 <has_text_matching expression="1\t105\t.\tTA\tT\t"/> |
| 268 </assert_contents> | 254 </assert_contents> |
| 269 </output> | 255 </output> |
| 270 <assert_command> | 256 <assert_command> |
| 271 <has_text text="--atomize" /> | 257 <has_text text="--atomize --atom-overlaps ."/> |
| 272 </assert_command> | 258 </assert_command> |
| 273 </test> | 259 </test> |
| 274 <!-- Test region overlap options --> | 260 <!-- Test region overlap options --> |
| 275 <test> | 261 <test> |
| 276 <param name="input_file" ftype="vcf" dbkey="?" value="norm.vcf" /> | 262 <param name="input_file" ftype="vcf" dbkey="?" value="norm.vcf"/> |
| 277 <expand macro="test_using_reference" select_from="cached" ref="norm" /> | 263 <expand macro="test_using_reference" select_from="cached" ref="norm"/> |
| 278 <param name="normalize_indels" value="true" /> | 264 <param name="normalize_indels" value="true"/> |
| 279 <param name="output_type" value="v" /> | 265 <param name="output_type" value="v"/> |
| 280 <section name="sec_restrict"> | 266 <section name="sec_restrict"> |
| 281 <param name="regions_overlap" value="1"/> | 267 <conditional name="regions"> |
| 268 <param name="regions_src" value="regions" /> | |
| 269 <repeat name="region_specs"> | |
| 270 <param name="chrom" value="1" /> | |
| 271 </repeat> | |
| 272 </conditional> | |
| 282 </section> | 273 </section> |
| 283 <output name="output_file"> | 274 <output name="output_file"> |
| 284 <assert_contents> | 275 <assert_contents> |
| 285 <has_text text="T,TAACCCTA" /> | 276 <has_text text="T,TAACCCTA"/> |
| 286 <not_has_text text="TAA,TAACCCTAAA" /> | 277 <not_has_text text="TAA,TAACCCTAAA"/> |
| 287 </assert_contents> | 278 </assert_contents> |
| 288 </output> | 279 </output> |
| 289 <assert_command> | 280 <assert_command> |
| 290 <has_text text="--regions-overlap" /> | 281 <has_text text="--regions-overlap"/> |
| 282 </assert_command> | |
| 283 </test> | |
| 284 <!-- Test normalization filters and sort --> | |
| 285 <test> | |
| 286 <param name="input_file" ftype="vcf" value="norm.vcf"/> | |
| 287 <expand macro="test_using_reference" ref="norm.fa"/> | |
| 288 <param name="normalize_indels" value="true"/> | |
| 289 <section name="sec_default"> | |
| 290 <param name="sort" value="lex"/> | |
| 291 </section> | |
| 292 <section name="sec_filter_norm"> | |
| 293 <param name="include" value="QUAL>10"/> | |
| 294 </section> | |
| 295 <param name="output_type" value="v"/> | |
| 296 <output name="output_file"> | |
| 297 <assert_contents> | |
| 298 <has_text text="T,TAACCCTA"/> | |
| 299 </assert_contents> | |
| 300 </output> | |
| 301 <assert_command> | |
| 302 <has_text text="--sort lex"/> | |
| 303 <has_text text="--include 'QUAL>10'"/> | |
| 291 </assert_command> | 304 </assert_command> |
| 292 </test> | 305 </test> |
| 293 </tests> | 306 </tests> |
| 294 <help><![CDATA[ | 307 <help><![CDATA[ |
| 295 ===================================== | 308 ===================================== |
| 302 @REGIONS_HELP@ | 315 @REGIONS_HELP@ |
| 303 @TARGETS_HELP@ | 316 @TARGETS_HELP@ |
| 304 | 317 |
| 305 @BCFTOOLS_MANPAGE@#@EXECUTABLE@ | 318 @BCFTOOLS_MANPAGE@#@EXECUTABLE@ |
| 306 | 319 |
| 307 @BCFTOOLS_WIKI@ | 320 @BCFTOOLS_HOWTOS@ |
| 308 ]]> | 321 ]]> |
| 309 </help> | 322 </help> |
| 310 <expand macro="citations" /> | 323 <expand macro="citations"/> |
| 311 </tool> | 324 </tool> |
