|
288 | 288 | run_test(\&test_vcf_norm,$opts,in=>'norm.symbolic',fai=>'norm.symbolic',out=>'norm.symbolic.1.out',args=>'--old-rec-tag ORI'); |
289 | 289 | run_test(\&test_vcf_norm,$opts,in=>'norm.right-align',fai=>'norm.right-align',out=>'norm.right-align.1.out',args=>'--old-rec-tag ORI'); |
290 | 290 | run_test(\&test_vcf_norm,$opts,in=>'norm.right-align',fai=>'norm.right-align',out=>'norm.right-align.2.out',args=>'--old-rec-tag ORI -g {PATH}/norm.right-align.gff'); |
| 291 | +run_test(\&test_vcf_view,$opts,in=>'weird-chr-names',out=>'weird-chr-names.1.out',args=>'',reg=>'-r 1'); |
| 292 | +run_test(\&test_vcf_view,$opts,in=>'weird-chr-names',out=>'weird-chr-names.1.out',args=>'',reg=>'-r 1:1-2'); |
| 293 | +run_test(\&test_vcf_view,$opts,in=>'weird-chr-names',out=>'weird-chr-names.1.out',args=>'',reg=>'-r 1:1,1:2'); |
| 294 | +run_test(\&test_vcf_view,$opts,in=>'weird-chr-names',out=>'weird-chr-names.2.out',args=>'',reg=>'-r 1:1-1'); |
| 295 | +run_test(\&test_vcf_view,$opts,in=>'weird-chr-names',out=>'weird-chr-names.3.out',args=>'',reg=>'-r {1:1}'); |
| 296 | +run_test(\&test_vcf_view,$opts,in=>'weird-chr-names',out=>'weird-chr-names.3.out',args=>'',reg=>'-r {1:1}:1-2'); |
| 297 | +run_test(\&test_vcf_view,$opts,in=>'weird-chr-names',out=>'weird-chr-names.3.out',args=>'',reg=>'-r {1:1}:1,{1:1}:2'); |
| 298 | +run_test(\&test_vcf_view,$opts,in=>'weird-chr-names',out=>'weird-chr-names.4.out',args=>'',reg=>'-r {1:1}:1-1'); |
| 299 | +run_test(\&test_vcf_view,$opts,in=>'weird-chr-names',out=>'weird-chr-names.5.out',args=>'',reg=>'-r {1:1-1}'); |
| 300 | +run_test(\&test_vcf_view,$opts,in=>'weird-chr-names',out=>'weird-chr-names.5.out',args=>'',reg=>'-r {1:1-1}:1-2'); |
| 301 | +run_test(\&test_vcf_view,$opts,in=>'weird-chr-names',out=>'weird-chr-names.5.out',args=>'',reg=>'-r {1:1-1}:1,{1:1-1}:2'); |
| 302 | +run_test(\&test_vcf_view,$opts,in=>'weird-chr-names',out=>'weird-chr-names.6.out',args=>'',reg=>'-r {1:1-1}:1-1'); |
| 303 | +run_test(\&test_vcf_view,$opts,in=>'weird-chr-names',args=>'',reg=>'-r {1:1-1}-2',expected_failure=>1); |
291 | 304 | run_test(\&test_vcf_view,$opts,in=>'view',out=>'view.1.out',args=>'-aUc1 -C1 -s NA00002 -v snps',reg=>''); |
292 | 305 | run_test(\&test_vcf_view,$opts,in=>'view',out=>'view.2.out',args=>'-f PASS -Xks NA00003',reg=>'-r20,Y'); |
293 | 306 | run_test(\&test_vcf_view,$opts,in=>'view',out=>'view.3.out',args=>'-xs NA00003',reg=>''); |
@@ -1078,7 +1091,13 @@ sub test_cmd |
1078 | 1091 |
|
1079 | 1092 | my ($ret,$out,$err) = _cmd3("$args{cmd}"); |
1080 | 1093 | if ( length($err) ) { $err =~ s/\n/\n\t\t/gs; $err = "\n\n\t\t$err\n"; } |
1081 | | - if ( $ret ) { failed($opts,$test,"Non-zero status $ret$err"); return; } |
| 1094 | + if ( $ret && !$args{expected_failure} ) { failed($opts,$test,"Non-zero status $ret$err"); return; } |
| 1095 | + if ( $args{expected_failure} ) |
| 1096 | + { |
| 1097 | + if ( !$ret ) { failed($opts,$test,"Expected failure but the test returned $ret$err"); } |
| 1098 | + else { passed($opts,$test,"ok, expected non-zero status"); } |
| 1099 | + return; |
| 1100 | + } |
1082 | 1101 | if ( $$opts{redo_outputs} && -e "$$opts{path}/$args{out}" ) |
1083 | 1102 | { |
1084 | 1103 | rename("$$opts{path}/$args{out}","$$opts{path}/$args{out}.old"); |
@@ -1150,9 +1169,10 @@ sub failed |
1150 | 1169 | } |
1151 | 1170 | sub passed |
1152 | 1171 | { |
1153 | | - my ($opts,$test) = @_; |
| 1172 | + my ($opts,$test,$reason) = @_; |
1154 | 1173 | $$opts{nok}++; |
1155 | | - print ".. ok\n\n"; |
| 1174 | + if ( !defined $reason ) { $reason = 'ok'; } |
| 1175 | + print ".. $reason\n\n"; |
1156 | 1176 | } |
1157 | 1177 | sub is_file_newer |
1158 | 1178 | { |
|
0 commit comments