X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=test%2Fjalview%2Fanalysis%2FAlignSeqTest.java;h=03bdd0b8e087f24513d9c6c15b930f28a3c0c403;hb=37c507c5ed74c4b1564556a19d0bc651f8dccc2d;hp=85f619b01d19abc11d21d1c390670d137e15821d;hpb=81f1e29b00bc98403d45d2258da71ac19c425c57;p=jalview.git diff --git a/test/jalview/analysis/AlignSeqTest.java b/test/jalview/analysis/AlignSeqTest.java index 85f619b..03bdd0b 100644 --- a/test/jalview/analysis/AlignSeqTest.java +++ b/test/jalview/analysis/AlignSeqTest.java @@ -52,13 +52,14 @@ public class AlignSeqTest assertEquals(AlignSeq.extractGaps(" -", " AC-G.T"), "ACG.T"); assertEquals(AlignSeq.extractGaps(" -.", " AC-G.T ."), "ACGT"); assertEquals(AlignSeq.extractGaps("-", " AC-G.T"), " ACG.T"); + assertEquals(AlignSeq.extractGaps("-. ", " -. .-"), ""); } @Test(groups = { "Functional" }) public void testIndexEncode_nucleotide() { - AlignSeq as = new AlignSeq(new Sequence("s1", "TTAG"), new Sequence( - "s2", "ACGT"), AlignSeq.DNA); + AlignSeq as = new AlignSeq(new Sequence("s1", "TTAG"), + new Sequence("s2", "ACGT"), AlignSeq.DNA); int[] expected = new int[] { 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, -1, -1, 10, -1 }; String s = "aAcCgGtTuUiIxXrRyYnN .-?"; @@ -68,11 +69,23 @@ public class AlignSeqTest @Test(groups = { "Functional" }) public void testIndexEncode_peptide() { - AlignSeq as = new AlignSeq(new Sequence("s1", "PFY"), new Sequence( - "s2", "RQW"), AlignSeq.PEP); - int[] expected = new int[] { 0, 0, 1, 1, 2, 2, 21, 21, 22, 22, -1, 24, - -1, 23, -1 }; + AlignSeq as = new AlignSeq(new Sequence("s1", "PFY"), + new Sequence("s2", "RQW"), AlignSeq.PEP); + int[] expected = new int[] { 0, 0, 1, 1, 2, 2, 21, 21, 22, 22, -1, 23, + -1, -1, -1 }; String s = "aArRnNzZxX *.-?"; assertArrayEquals(expected, as.indexEncode(s)); } + @Test(groups= {"Functional"}) + public void testGlobalAlignment() + { + String seq1="CAGCTAGCG",seq2="CCATACGA"; + Sequence sq1=new Sequence("s1",seq1),sq2=new Sequence("s2",seq2); + // AlignSeq doesn't report the unaligned regions at either end of sequences + //String alseq1="-CAGCTAGCG-",alseq2="CCA--TA-CGA"; + // so we check we have the aligned segment correct only + String alseq1="CAGCTAGCG",alseq2="CA--TA-CG"; + AlignSeq as = AlignSeq.doGlobalNWAlignment(sq1,sq2,AlignSeq.DNA); + assertEquals(as.getAStr1()+"\n"+as.getAStr2(),alseq1+"\n"+alseq2); + } }