Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Fixes StringOutOfBoundException for cases of three indels/three delet…
…ions/ two deletions and insertion

Added test case
  • Loading branch information
PolinaBevad committed Sep 21, 2018
1 parent 26fc1d8 commit a017b1a
Show file tree
Hide file tree
Showing 6 changed files with 10 additions and 3 deletions.
3 changes: 3 additions & 0 deletions src/main/java/com/astrazeneca/vardict/VarDict.java
Expand Up @@ -524,6 +524,9 @@ static int somdict(Region segs, Map<Integer, Vars> vars1, Map<Integer, Vars> var
Collections.sort(pp);

for (Integer p : pp) {
if (p < segs.start || p > segs.end) {
continue;
}
Vars v1 = vars1.get(p);
Vars v2 = vars2.get(p);
if (v1 == null && v2 == null) { // both samples have no coverage
Expand Down
6 changes: 3 additions & 3 deletions src/main/java/com/astrazeneca/vardict/modules/CigarUtils.java
Expand Up @@ -194,7 +194,7 @@ public static Tuple.Tuple2<Integer, String> modifyCigar(int indel,

//number of bases after refoff/rdoff that match in reference and read
int rn = 0;
while (isHasAndEquals(querySeq.charAt(rdoff + rn), ref, refoff + rn)) {
while (rdoff + rn < querySeq.length() && isHasAndEquals(querySeq.charAt(rdoff + rn), ref, refoff + rn)) {
rn++;
}
RDOFF += rn;
Expand Down Expand Up @@ -247,7 +247,7 @@ public static Tuple.Tuple2<Integer, String> modifyCigar(int indel,

//number of bases after refoff/rdoff that match in reference and read
int rn = 0;
while (isHasAndEquals(querySeq.charAt(rdoff + rn), ref, refoff + rn)) {
while (rdoff + rn < querySeq.length() && isHasAndEquals(querySeq.charAt(rdoff + rn), ref, refoff + rn)) {
rn++;
}
RDOFF += rn;
Expand Down Expand Up @@ -301,7 +301,7 @@ public static Tuple.Tuple2<Integer, String> modifyCigar(int indel,
}

int rn = 0;
while (isHasAndEquals(querySeq.charAt(rdoff + rn), ref, refoff + rn)) {
while (rdoff + rn < querySeq.length() && isHasAndEquals(querySeq.charAt(rdoff + rn), ref, refoff + rn)) {
rn++;
}
RDOFF += rn;
Expand Down
Binary file not shown.
Binary file not shown.
1 change: 1 addition & 0 deletions testdata/fastas/GRCh37.fa.csv
@@ -0,0 +1 @@
11,1278939,1281541,CGGTAAGACGCTGCAGAGCAGAGGTGCCCGGCATAGGGTGAGGGGGGACAGAGCCGGTGCCCACCAGGGGCCTGTGGGTTGGGCACAGGAGAGCAGAGGAGAGCCACTGTGTCCTGGCGTGACCGCGGCAGGACCACTCGGCAGAGATGGCCTCCAGGTGCTTCATTCTCCTCCTAACGATGAGGCTGGTGACCTCTGGCCTGCCCAGGAGTGGCCCAGGGACGTGGGAAGCAGCGGGGAGGTGGCCAAGCAAGGGGCCTGGAGGGAGCCCCCAGGGGCTGTGAAGCGGTCAGGTCCTCGGGGAAAAGCACGCCTGCGACTTACTCTGGGAACAAGTGGTCGGGAGGAGGAGTGAGCAGCGCCCAGACAGTGGCCTCCATCCTCCCGCAGTGTGCAACACAACCACCTGCCCCCAGAGCCTGCCTGTGTGCCCGCCAGGGCAGGAGTCCATCTGCACCCAGGAGGAGGGCGACTGCTGTCCCACCTTCCGCTGCAGTGAGCGGGGCTGGGGCCGGGCTCCTGGGTGGCCTCTTGCTGGGGGTGGGGGAGTGCAGGATGGTGGGGGCGCTGGAGCACATGCTCCCCACCACTTGTCGAGGGCTTAGCTCCCTTTCCTTCCAGGACCTCAGCTGTGTTCGTACAATGGCACCTTCTACGGGGTAAGGGCACAGCAGTGGGTGGGTGTGGCCCTGGGGCCTGAACATGTGTGTGGGATGCCCCGGGGCTCTCTGAGCCCCACTCCTTGTCTTGACATTCCTGCCCTGAGGGCCGATCCGCACAGGGGCCCTGGACACGTCAGAGCTGGGACATGCTTGGGACTCAGGGGCACCTTACGTCGACAGCCATGAGCTCCACAACTGCTGCCTCTGAGAGGTCCCTTCAGGGGCTCCCAGCAACAGCCTGGGGGCAGCACACACTGGCCTGGGGTCCCCGCCTGCCCGCCCAGATTCCTACCCGCCCGGATTCCTGCCTGCCAGATTCCTGCCCCCATGGGGTCTCTGCCCACCCAGATTCCTGCCCACATGGGGTCTCTGCCTGCCCAGATTCCCTGCCCACCTGTGGTCCCTGTGTGCATCAGCTCCCTGCCTGCCTGGGTCCATGCTCAGCCAGGGGTGCATCTATGCTCCATCTGAGGAAGGAACAACTCCCTGCAGGCCCCATTGGGTCATGGGGAGGGGTCCTGGCCCTGTTGCCCCACCAGTGCCCTCAGTGCCACCCTCCCACCCCTTGCAGGTTGGTGCAACCTTCCCAGGCGCCCTTCCCTGCCACATGTGTACCTGCCTCTCTGGGGACACCCAGGACCCAACGGTGCAATGTCAGGAGGATGCCTGCAACAATACTACCTGTCCCCAGGTGAGACCCGAGGCACCTGCCCCCAGGTGAGCCCCCGAGGCACCTGCCCCCAAGTGAGACCCGAGGCACCTGCCCCCAGGTGAGACCTGAGTCACCCGCCCCCAGGTGAGCCCCCGAGGCACCTGCCCCCAGGTGAGTCCCTGAGGCACTTGCCCCCAAGTGAGACCCGAGGCACCTGCCCCCAGGTGAGACCCGAGGCACCTGCCCCCAGGTGAGACCTGAGTCACCTGCCCCCAGGTGAGCCACCAAGGCACCTGCCCCCAAGTGAGACCCGAGGCACCTGCCCCCAGGTGAGCCCACAGCTGCTGGGCAGACCCAGCCCTGAGTCACTTATCCTGGCTCCCTGGGGTTCTCTAGCTCAGCCATTGCTGGGGTCTTGTTTGTTTCCAAAGGGAGGGTATGAAGTAGGAGGATAACTGAGGGGGTCTGGGGGTGGGACAGGACCTGCAGGCTGCTGGGGACAGGGGCTGAGGTCAGGTTCCAGGAAGGCAGGGGTAGGCAGAGAGAAGGTGCTGGAAACTGGGGTGAGGCTGAGCCGGGATAACTGAGTGGGGGCAACTTCTTCGGGTATAGGCCCAGGCAGGGACAGGGCTAAGGGGTCCTGGACCACTGGGGTGTAGACAGGAGGGCAGGCTGGGCCGGGGCATGTGCTGGAGGAGAGGGTTAGGGCCTGACGCCCCTCATGTCCCCACAGGGCTTTGAGTACAAGAGAGTGGCCGGGCAGTGCTGTGGGGAGTGCGTCCAGACCGCCTGCCTCACGCCCGATGGCCAGCCAGTCCAGGTAACAGCAGAGGCATGTGGGGGCAGGTCTCAGCTCCCTCCCTGGAGACCCTCACCCCCAATGGGGCTCTGCACAAGAGGTAATCCCTACTCAGCTTCCACACTCACCCTTGCATTTCAGCTGAATGAAACCTGGGTCAACAGCCATGTGGACAACTGCACCGTGTACCTCTGTGAGGCTGAGGGTGGAGTCCATTTGCTGACCCCACAGCCTGCATCCTGCCCAGATGTGTCCAGCTGCAGGGTGTGTGCTGGAGGCCCTGCCCCTGCCTGGGAGTCCTTGTCCATCAGGGAGGCCCAACCCCTGTCTGGGATGCCCTGCACAGCAGGGAGGCCCCACCCCTGCTGGGGAGGCCCCACCCCTGCCTGGGAAGCCCCACCCCTGCCTGGGAGGCCCCGCCCCTGCCCGGGAGGCCATGCCCCTGCCCGGGTGGGCCCCTCCCCAGGAGGCCGCACCCACCAGGGAGGCC
@@ -0,0 +1,3 @@
Simple,GRCh37.fa,N13532.TwoDels1InsStringBoundError.bam,chr11,1280138,1280341,-f 0.0025 -F 0x700 -Q 10
N13532.TwoDels1InsStringBoundError testbed 11 1280291 1280344 GGTGAGACCCGAGGCACCTGCCCCCAGGTGAGCCCCCGAGGCACCTGCCCCCAA G 3733 39 1693 1990 0 39 G/-53 0.0104 2;1 48.6 1 34.3 1 48.5 78.000 0.0112 0 31 2.000 1 3.6 39 3488 AACAATACTACCTGTCCCCA GTGAGACCCGAGGCACCTGC 11:1280139-1280341 Deletion 0 0
N13532.TwoDels1InsStringBoundError testbed 11 1280301 1280301 G A 3708 33 1606 2012 11 22 G/A 0.0089 2;2 49.1 1 37.1 1 58.1 10.000 0.0088 0 0 1.000 1 1.8 30 3409 CCTGTCCCCAGGTGAGACCC AGGCACCTGCCCCCAGGTGA 11:1280139-1280341 SNV 0 0

0 comments on commit a017b1a

Please sign in to comment.