Skip to content

Commit b2637fd

Browse files
update unit test
1 parent 228639e commit b2637fd

File tree

1 file changed

+26
-6
lines changed

1 file changed

+26
-6
lines changed

qio/test/org/qcmg/qio/vcf/VcfWriterReaderTest.java

+26-6
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,15 @@
2020

2121
public class VcfWriterReaderTest {
2222

23-
public static final String[] vcfStrings = new String[] {"##test=test", VcfHeaderUtils.STANDARD_FINAL_HEADER_LINE};
23+
public static final String[] vcfStrings = new String[] {"##test=test", VcfHeaderUtils.STANDARD_FINAL_HEADER_LINE, };
24+
private final String[] parms = {"chrY","2675826",".","TG","CA"};
25+
2426

2527
@Rule
2628
public TemporaryFolder testFolder = new TemporaryFolder();
2729

2830
@Test
29-
public void getHeaderFromZippedVcfFileUsingStreams() throws IOException {
31+
public void getHeaderFromZippedVcfFile() throws IOException {
3032
File file = testFolder.newFile("header.vcf.gz");
3133

3234
try(RecordWriter<VcfRecord> writer = new RecordWriter<>(file) ){
@@ -38,21 +40,30 @@ public void getHeaderFromZippedVcfFileUsingStreams() throws IOException {
3840
* Should be able to get the header back out
3941
*/
4042
VcfHeader header = null;
43+
int num = 0;
4144
try(VcfFileReader reader = new VcfFileReader(file) ){
4245
header = reader.getVcfHeader();
46+
for(VcfRecord re: reader) {
47+
num ++;
48+
}
49+
4350
}
4451
assertEquals(true, null != header);
4552
assertEquals(VcfHeaderUtils.STANDARD_FINAL_HEADER_LINE, header.getChrom().toString());
4653
assertEquals(1, header.getAllMetaRecords().size());
4754
assertEquals("##test=test", header.getAllMetaRecords().get(0).toString());
55+
assertEquals(0, num); //no record
4856
}
4957

5058
@Test
51-
public void getHeaderFromZippedVcfFile() throws IOException {
59+
public void getHeaderFromInvalidVcfFile() throws IOException {
5260
File file = testFolder.newFile("header.vcf.gz");
5361

5462
try(RecordWriter<VcfRecord> writer = new RecordWriter<>(file) ){
5563
writer.addHeader(Arrays.stream(vcfStrings).collect(Collectors.joining("\n")));
64+
writer.add(new VcfRecord(parms));
65+
writer.add(new VcfRecord(parms));
66+
writer.addHeader(Arrays.stream(vcfStrings).collect(Collectors.joining("\n")));
5667
}
5768
assertEquals(true, FileUtils.isInputGZip(file) );
5869

@@ -61,14 +72,23 @@ public void getHeaderFromZippedVcfFile() throws IOException {
6172
* Should be able to get the header back out
6273
*/
6374
VcfHeader header = null;
64-
6575
try(VcfFileReader reader = new VcfFileReader(file) ){
6676
header = reader.getVcfHeader();
6777
}
6878
assertEquals(true, null != header);
69-
assertEquals(VcfHeaderUtils.STANDARD_FINAL_HEADER_LINE, header.getChrom().toString());
7079
assertEquals(1, header.getAllMetaRecords().size());
71-
assertEquals("##test=test", header.getAllMetaRecords().get(0).toString());
80+
81+
int num = 0;
82+
try(VcfFileReader reader = new VcfFileReader(file) ){
83+
for(VcfRecord re: reader) {
84+
num ++;
85+
System.out.println(re.toSimpleString());
86+
}
87+
fail("expected exception should throw here! ");
88+
}catch(IllegalArgumentException e) {
89+
//two valid record but exception happed when check next record before create second vcf record
90+
assertEquals(1, num); //one valid record
91+
}
7292
}
7393

7494
@Test

0 commit comments

Comments
 (0)