Clover icon

jalviewX

  1. Project Clover database Wed Oct 31 2018 15:13:58 GMT
  2. Package jalview.gui

File SeqPanelTest.java

 

Code metrics

0
22
3
1
91
61
3
0.14
7.33
3
1

Classes

Class Line # Actions
SeqPanelTest 33 22 3 0
1.0100%
 

Contributing tests

This file is covered by 2 tests. .

Source view

1    /*
2    * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
3    * Copyright (C) $$Year-Rel$$ The Jalview Authors
4    *
5    * This file is part of Jalview.
6    *
7    * Jalview is free software: you can redistribute it and/or
8    * modify it under the terms of the GNU General Public License
9    * as published by the Free Software Foundation, either version 3
10    * of the License, or (at your option) any later version.
11    *
12    * Jalview is distributed in the hope that it will be useful, but
13    * WITHOUT ANY WARRANTY; without even the implied warranty
14    * of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15    * PURPOSE. See the GNU General Public License for more details.
16    *
17    * You should have received a copy of the GNU General Public License
18    * along with Jalview. If not, see <http://www.gnu.org/licenses/>.
19    * The Jalview Authors are detailed in the 'AUTHORS' file.
20    */
21    package jalview.gui;
22   
23    import static org.testng.Assert.assertEquals;
24   
25    import jalview.datamodel.Alignment;
26    import jalview.datamodel.AlignmentI;
27    import jalview.datamodel.Sequence;
28    import jalview.datamodel.SequenceI;
29   
30    import org.testng.annotations.BeforeClass;
31    import org.testng.annotations.Test;
32   
 
33    public class SeqPanelTest
34    {
35    AlignFrame af;
36   
 
37  1 toggle @BeforeClass(alwaysRun = true)
38    public void setUpJvOptionPane()
39    {
40  1 JvOptionPane.setInteractiveMode(false);
41  1 JvOptionPane.setMockResponse(JvOptionPane.CANCEL_OPTION);
42    }
 
43  1 toggle @Test(groups = "Functional")
44    public void testSetStatusReturnsNearestResiduePosition()
45    {
46  1 SequenceI seq1 = new Sequence("Seq1", "AACDE");
47  1 SequenceI seq2 = new Sequence("Seq2", "AA--E");
48  1 AlignmentI al = new Alignment(new SequenceI[] { seq1, seq2 });
49  1 AlignFrame alignFrame = new AlignFrame(al, al.getWidth(),
50    al.getHeight());
51  1 AlignmentI visAl = alignFrame.getViewport().getAlignment();
52   
53    // Test either side of gap
54  1 assertEquals(
55    alignFrame.alignPanel.getSeqPanel().setStatusMessage(
56    visAl.getSequenceAt(1), 1, 1), 2);
57  1 assertEquals(alignFrame.statusBar.getText(),
58    "Sequence 2 ID: Seq2 Residue: ALA (2)");
59  1 assertEquals(
60    alignFrame.alignPanel.getSeqPanel().setStatusMessage(
61    visAl.getSequenceAt(1), 4, 1), 3);
62  1 assertEquals(alignFrame.statusBar.getText(),
63    "Sequence 2 ID: Seq2 Residue: GLU (3)");
64    // no status message at a gap, returns next residue position to the right
65  1 assertEquals(
66    alignFrame.alignPanel.getSeqPanel().setStatusMessage(
67    visAl.getSequenceAt(1), 2, 1), 3);
68  1 assertEquals(alignFrame.statusBar.getText(), "Sequence 2 ID: Seq2");
69  1 assertEquals(
70    alignFrame.alignPanel.getSeqPanel().setStatusMessage(
71    visAl.getSequenceAt(1), 3, 1), 3);
72  1 assertEquals(alignFrame.statusBar.getText(), "Sequence 2 ID: Seq2");
73    }
74   
 
75  1 toggle @Test(groups = "Functional")
76    public void testAmbiguousAminoAcidGetsStatusMessage()
77    {
78  1 SequenceI seq1 = new Sequence("Seq1", "ABCDE");
79  1 SequenceI seq2 = new Sequence("Seq2", "AB--E");
80  1 AlignmentI al = new Alignment(new SequenceI[] { seq1, seq2 });
81  1 AlignFrame alignFrame = new AlignFrame(al, al.getWidth(),
82    al.getHeight());
83  1 AlignmentI visAl = alignFrame.getViewport().getAlignment();
84   
85  1 assertEquals(
86    alignFrame.alignPanel.getSeqPanel().setStatusMessage(
87    visAl.getSequenceAt(1), 1, 1), 2);
88  1 assertEquals(alignFrame.statusBar.getText(),
89    "Sequence 2 ID: Seq2 Residue: B (2)");
90    }
91    }