X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=test%2Fjalview%2Fgui%2FSeqPanelTest.java;h=a5d244db1d43d3ed94ddd61f6a479a1c0382cfdf;hb=78cabbf8b536bae6a2586815d0aec04c982afc2f;hp=488570aef206b111588fa3107fcc26b6077ca2f4;hpb=1ae70c4324da0e26611bb2a9272dfacb92b6c234;p=jalview.git diff --git a/test/jalview/gui/SeqPanelTest.java b/test/jalview/gui/SeqPanelTest.java index 488570a..a5d244d 100644 --- a/test/jalview/gui/SeqPanelTest.java +++ b/test/jalview/gui/SeqPanelTest.java @@ -41,26 +41,51 @@ public class SeqPanelTest JvOptionPane.setMockResponse(JvOptionPane.CANCEL_OPTION); } @Test(groups = "Functional") - public void testSetStatusReturnsPosOrMinusOne() + public void testSetStatusReturnsNearestResiduePosition() { - SequenceI seq1 = new Sequence("Seq1", "ABCDEFGHIJ"); - SequenceI seq2 = new Sequence("Seq2", "AB--EFGHIJ"); + SequenceI seq1 = new Sequence("Seq1", "AACDE"); + SequenceI seq2 = new Sequence("Seq2", "AA--E"); AlignmentI al = new Alignment(new SequenceI[] { seq1, seq2 }); AlignFrame alignFrame = new AlignFrame(al, al.getWidth(), al.getHeight()); AlignmentI visAl = alignFrame.getViewport().getAlignment(); + + // Test either side of gap assertEquals( alignFrame.alignPanel.getSeqPanel().setStatusMessage( visAl.getSequenceAt(1), 1, 1), 2); + assertEquals(alignFrame.statusBar.getText(), + "Sequence 2 ID: Seq2 Residue: ALA (2)"); assertEquals( - alignFrame.alignPanel.getSeqPanel().setStatusMessage( - visAl.getSequenceAt(1), 2, 1), -1); + visAl.getSequenceAt(1), 4, 1), 3); + assertEquals(alignFrame.statusBar.getText(), + "Sequence 2 ID: Seq2 Residue: GLU (3)"); + // no status message at a gap, returns next residue position to the right assertEquals( alignFrame.alignPanel.getSeqPanel().setStatusMessage( - visAl.getSequenceAt(1), 3, 1), -1); + visAl.getSequenceAt(1), 2, 1), 3); + assertEquals(alignFrame.statusBar.getText(), "Sequence 2 ID: Seq2"); assertEquals( alignFrame.alignPanel.getSeqPanel().setStatusMessage( - visAl.getSequenceAt(1), 4, 1), 3); + visAl.getSequenceAt(1), 3, 1), 3); + assertEquals(alignFrame.statusBar.getText(), "Sequence 2 ID: Seq2"); + } + + @Test(groups = "Functional") + public void testAmbiguousAminoAcidGetsStatusMessage() + { + SequenceI seq1 = new Sequence("Seq1", "ABCDE"); + SequenceI seq2 = new Sequence("Seq2", "AB--E"); + AlignmentI al = new Alignment(new SequenceI[] { seq1, seq2 }); + AlignFrame alignFrame = new AlignFrame(al, al.getWidth(), + al.getHeight()); + AlignmentI visAl = alignFrame.getViewport().getAlignment(); + + assertEquals( + alignFrame.alignPanel.getSeqPanel().setStatusMessage( + visAl.getSequenceAt(1), 1, 1), 2); + assertEquals(alignFrame.statusBar.getText(), + "Sequence 2 ID: Seq2 Residue: B (2)"); } }