JAL-2089 Merge branch releases/Release_2_10_Branch to master
[jalview.git] / test / jalview / datamodel / SearchResultsTest.java
index 72f78f5..46228b8 100644 (file)
@@ -22,8 +22,11 @@ package jalview.datamodel;
 
 import static org.testng.AssertJUnit.assertEquals;
 import static org.testng.AssertJUnit.assertFalse;
+import static org.testng.AssertJUnit.assertSame;
 import static org.testng.AssertJUnit.assertTrue;
 
+import jalview.datamodel.SearchResults.Match;
+
 import org.testng.annotations.Test;
 
 public class SearchResultsTest
@@ -166,4 +169,24 @@ public class SearchResultsTest
     sr2.addResult(seq1, 6, 8);
     assertEquals(sr1.hashCode(), sr2.hashCode());
   }
+
+  /**
+   * Verify that SearchResults$Match constructor normalises start/end to the
+   * 'forwards' direction
+   */
+  @Test(groups = { "Functional" })
+  public void testMatchConstructor()
+  {
+    SequenceI seq1 = new Sequence("", "abcdefghijklm");
+    Match m = new SearchResults().new Match(seq1, 2, 5);
+    assertSame(seq1, m.getSequence());
+    assertEquals(2, m.getStart());
+    assertEquals(5, m.getEnd());
+
+    // now a reverse mapping:
+    m = new SearchResults().new Match(seq1, 5, 2);
+    assertSame(seq1, m.getSequence());
+    assertEquals(2, m.getStart());
+    assertEquals(5, m.getEnd());
+  }
 }