diff --git a/biojava-alignment/src/main/java/org/biojava/nbio/alignment/routines/AlignerHelper.java b/biojava-alignment/src/main/java/org/biojava/nbio/alignment/routines/AlignerHelper.java index edba157916..f00ce2101f 100644 --- a/biojava-alignment/src/main/java/org/biojava/nbio/alignment/routines/AlignerHelper.java +++ b/biojava-alignment/src/main/java/org/biojava/nbio/alignment/routines/AlignerHelper.java @@ -581,7 +581,7 @@ public static Last[][] setScoreVector(int x, int xb, int yb, int ye, int gep, in if (x == xb) { pointers = new Last[ye + 1][1]; } else { - pointers = new Last[ye + 1][]; + pointers = new Last[ye + 1][1]; pointers[0] = new Last[1]; for (int y = 1; y < scores[x].length; y++) { pointers[y][0] = setScorePoint(x, y, gep, subs[y], scores); diff --git a/biojava-alignment/src/test/java/org/biojava/nbio/alignment/TestDNAAlignment.java b/biojava-alignment/src/test/java/org/biojava/nbio/alignment/TestDNAAlignment.java index a50d8c4cde..169babaf04 100644 --- a/biojava-alignment/src/test/java/org/biojava/nbio/alignment/TestDNAAlignment.java +++ b/biojava-alignment/src/test/java/org/biojava/nbio/alignment/TestDNAAlignment.java @@ -165,4 +165,16 @@ public void testLinearAlignment() throws CompoundNotFoundException { PairwiseSequenceAligner aligner = Alignments.getPairwiseAligner(query, target, PairwiseSequenceAlignerType.GLOBAL, gapP, matrix); Assert.assertEquals(String.format("GTAAAA-G----------%nG-AAAACGTTTTTTTTTT%n"), aligner.getPair().toString());; } + /** + * @author aegugup + */ + @Test + public void testLinearAlignmentLocal() throws CompoundNotFoundException { + DNASequence query = new DNASequence("TGTTACGG", DNACompoundSet.getDNACompoundSet()); + DNASequence target = new DNASequence("GGTTGACTA", DNACompoundSet.getDNACompoundSet()); + SubstitutionMatrix matrix = SubstitutionMatrixHelper.getNuc4_4(); + SimpleGapPenalty gapP = new SimpleGapPenalty((short)0, (short)8); + PairwiseSequenceAligner aligner = Alignments.getPairwiseAligner(query, target, PairwiseSequenceAlignerType.LOCAL, gapP, matrix); + Assert.assertEquals(String.format("GTT-AC%nGTTGAC%n"), aligner.getPair().toString());; + } }