Clover icon

Coverage Report

  1. Project Clover database Wed Nov 13 2024 16:12:26 GMT
  2. Package jalview.datamodel

File MatchTest.java

 

Code metrics

0
32
3
1
96
54
3
0.09
10.67
3
1

Classes

Class Line # Actions
MatchTest 32 32 3
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.datamodel;
22   
23    import static org.testng.AssertJUnit.assertEquals;
24    import static org.testng.AssertJUnit.assertFalse;
25    import static org.testng.AssertJUnit.assertTrue;
26   
27    import jalview.gui.JvOptionPane;
28   
29    import org.testng.annotations.BeforeClass;
30    import org.testng.annotations.Test;
31   
 
32    public class MatchTest
33    {
34   
 
35  1 toggle @BeforeClass(alwaysRun = true)
36    public void setUpJvOptionPane()
37    {
38  1 JvOptionPane.setInteractiveMode(false);
39  1 JvOptionPane.setMockResponse(JvOptionPane.CANCEL_OPTION);
40    }
41   
 
42  1 toggle @Test(groups = { "Functional" })
43    public void testToString()
44    {
45  1 SequenceI seq = new Sequence("Seq1", "abcdefghijklm");
46  1 SearchResultMatchI m = new SearchResults().new Match(seq, 3, 5);
47  1 assertEquals("Seq1/3-5", m.toString());
48    }
49   
 
50  1 toggle @Test(groups = { "Functional" })
51    public void testEquals()
52    {
53  1 SequenceI seq1 = new Sequence("", "abcdefghijklm");
54  1 SequenceI seq2 = new Sequence("", "abcdefghijklm");
55  1 SearchResultsI sr1 = new SearchResults();
56  1 SearchResultsI sr2 = new SearchResults();
57   
58  1 assertFalse(sr1.equals(null));
59  1 assertFalse(sr1.equals(seq1));
60  1 assertTrue(sr1.equals(sr1));
61  1 assertTrue(sr1.equals(sr2));
62  1 assertTrue(sr2.equals(sr1));
63   
64  1 sr1.addResult(seq1, 1, 1);
65  1 assertFalse(sr1.equals(sr2));
66  1 assertFalse(sr2.equals(sr1));
67   
68  1 sr2.addResult(seq1, 1, 1);
69  1 assertTrue(sr1.equals(sr2));
70  1 assertTrue(sr2.equals(sr1));
71   
72    /*
73    * same match but on different sequences - not equal
74    */
75  1 SearchResultsI sr3 = new SearchResults();
76  1 sr3.addResult(seq2, 1, 1);
77  1 assertFalse(sr1.equals(sr3));
78  1 assertFalse(sr3.equals(sr1));
79   
80    /*
81    * same sequence but different end position - not equal
82    */
83  1 sr1.addResult(seq1, 3, 4);
84  1 sr2.addResult(seq1, 3, 5);
85  1 assertFalse(sr1.equals(sr2));
86   
87    /*
88    * same sequence but different start position - not equal
89    */
90  1 sr1 = new SearchResults();
91  1 sr2 = new SearchResults();
92  1 sr1.addResult(seq1, 3, 4);
93  1 sr2.addResult(seq1, 2, 4);
94  1 assertFalse(sr1.equals(sr2));
95    }
96    }