X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=test%2Fjalview%2Fdatamodel%2FMatchTest.java;fp=test%2Fjalview%2Fdatamodel%2FMatchTest.java;h=f711a14fd38cb86b53cd1ee21adb6aace3a302f9;hb=f06554784411ddbf871d642e66c8dcb7f147d4a8;hp=0000000000000000000000000000000000000000;hpb=cf06ee5d732af6cc874115aece1138adafca8ad7;p=jalview.git diff --git a/test/jalview/datamodel/MatchTest.java b/test/jalview/datamodel/MatchTest.java new file mode 100644 index 0000000..f711a14 --- /dev/null +++ b/test/jalview/datamodel/MatchTest.java @@ -0,0 +1,75 @@ +package jalview.datamodel; +import static org.testng.AssertJUnit.assertEquals; +import static org.testng.AssertJUnit.assertFalse; +import static org.testng.AssertJUnit.assertTrue; + +import jalview.datamodel.SearchResults.Match; + +import org.testng.annotations.Test; + +public class MatchTest +{ + + @Test(groups = { "Functional" }) + public void testToString() + { + SequenceI seq = new Sequence("", "abcdefghijklm"); + Match m = new SearchResults().new Match(seq, 3, 5); + assertEquals("2cde", m.toString()); + } + + @Test(groups = { "Functional" }) + public void testGetCharacters() + { + SequenceI seq = new Sequence("", "abcdefghijklm"); + Match m = new SearchResults().new Match(seq, 3, 5); + assertEquals("cde", m.getCharacters()); + } + + @Test(groups = { "Functional" }) + public void testEquals() + { + SequenceI seq1 = new Sequence("", "abcdefghijklm"); + SequenceI seq2 = new Sequence("", "abcdefghijklm"); + SearchResults sr1 = new SearchResults(); + SearchResults sr2 = new SearchResults(); + + assertFalse(sr1.equals(null)); + assertFalse(sr1.equals(seq1)); + assertTrue(sr1.equals(sr1)); + assertTrue(sr1.equals(sr2)); + assertTrue(sr2.equals(sr1)); + + sr1.addResult(seq1, 1, 1); + assertFalse(sr1.equals(sr2)); + assertFalse(sr2.equals(sr1)); + + sr2.addResult(seq1, 1, 1); + assertTrue(sr1.equals(sr2)); + assertTrue(sr2.equals(sr1)); + + /* + * same match but on different sequences - not equal + */ + SearchResults sr3 = new SearchResults(); + sr3.addResult(seq2, 1, 1); + assertFalse(sr1.equals(sr3)); + assertFalse(sr3.equals(sr1)); + + /* + * same sequence but different end position - not equal + */ + sr1.addResult(seq1, 3, 4); + sr2.addResult(seq1, 3, 5); + assertFalse(sr1.equals(sr2)); + + /* + * same sequence but different start position - not equal + */ + sr1 = new SearchResults(); + sr2 = new SearchResults(); + sr1.addResult(seq1, 3, 4); + sr2.addResult(seq1, 2, 4); + assertFalse(sr1.equals(sr2)); + } +}