JAL-2403 JAL-1483 changes to ScoreModelI hierarchy and signatures to
[jalview.git] / test / jalview / analysis / scoremodels / ScoreModelsTest.java
index 594adcd..c4c3edb 100644 (file)
@@ -4,7 +4,10 @@ import static org.testng.Assert.assertEquals;
 import static org.testng.Assert.assertFalse;
 import static org.testng.Assert.assertTrue;
 
-import jalview.api.analysis.DistanceModelI;
+import jalview.api.analysis.DistanceScoreModelI;
+import jalview.api.analysis.PairwiseScoreModelI;
+import jalview.api.analysis.ScoreModelI;
+import jalview.api.analysis.SimilarityScoreModelI;
 
 import java.util.Iterator;
 
@@ -19,45 +22,52 @@ public class ScoreModelsTest
   @Test
   public void testConstructor()
   {
-    Iterator<DistanceModelI> models = ScoreModels.getInstance().getModels()
+    Iterator<ScoreModelI> models = ScoreModels.getInstance().getModels()
             .iterator();
     assertTrue(models.hasNext());
 
     /*
      * models are served in order of addition
      */
-    DistanceModelI sm = models.next();
-    assertTrue(sm instanceof PairwiseDistanceModel);
+    ScoreModelI sm = models.next();
+    assertTrue(sm instanceof SimilarityScoreModelI);
+    assertTrue(sm instanceof PairwiseScoreModelI);
+    assertFalse(sm instanceof DistanceScoreModelI);
     assertEquals(sm.getName(), "BLOSUM62");
-    assertEquals(((PairwiseDistanceModel) sm).getScoreModel()
-            .getPairwiseScore('I', 'R'), -3f);
+    assertEquals(((PairwiseScoreModelI) sm).getPairwiseScore('I', 'R'), -3f);
 
     sm = models.next();
-    assertTrue(sm instanceof PairwiseDistanceModel);
+    assertTrue(sm instanceof SimilarityScoreModelI);
+    assertTrue(sm instanceof PairwiseScoreModelI);
+    assertFalse(sm instanceof DistanceScoreModelI);
     assertEquals(sm.getName(), "PAM250");
-    assertEquals(((PairwiseDistanceModel) sm).getScoreModel()
-            .getPairwiseScore('R', 'C'), -4f);
+    assertEquals(((PairwiseScoreModelI) sm).getPairwiseScore('R', 'C'), -4f);
 
     sm = models.next();
-    assertTrue(sm instanceof PairwiseDistanceModel);
+    assertTrue(sm instanceof SimilarityScoreModelI);
+    assertTrue(sm instanceof PairwiseScoreModelI);
+    assertFalse(sm instanceof DistanceScoreModelI);
     assertEquals(sm.getName(), "Identity (SeqSpace)");
-    assertEquals(((PairwiseDistanceModel) sm).getScoreModel()
-            .getPairwiseScore('R', 'C'), 0f);
-    assertEquals(((PairwiseDistanceModel) sm).getScoreModel()
-            .getPairwiseScore('R', 'r'), 1f);
+    assertEquals(((PairwiseScoreModelI) sm).getPairwiseScore('R', 'C'), 0f);
+    assertEquals(((PairwiseScoreModelI) sm).getPairwiseScore('R', 'r'), 1f);
 
     sm = models.next();
-    assertTrue(sm instanceof PairwiseDistanceModel);
+    assertTrue(sm instanceof SimilarityScoreModelI);
+    assertTrue(sm instanceof PairwiseScoreModelI);
+    assertFalse(sm instanceof DistanceScoreModelI);
     assertEquals(sm.getName(), "DNA");
-    assertEquals(((PairwiseDistanceModel) sm).getScoreModel()
-            .getPairwiseScore('c', 'x'), 1f);
+    assertEquals(((PairwiseScoreModelI) sm).getPairwiseScore('c', 'x'), 1f);
 
     sm = models.next();
-    assertFalse(sm instanceof PairwiseDistanceModel);
+    assertFalse(sm instanceof SimilarityScoreModelI);
+    assertFalse(sm instanceof PairwiseScoreModelI);
+    assertTrue(sm instanceof DistanceScoreModelI);
     assertEquals(sm.getName(), "Sequence Feature Similarity");
 
     sm = models.next();
-    assertFalse(sm instanceof PairwiseDistanceModel);
+    assertFalse(sm instanceof SimilarityScoreModelI);
+    assertFalse(sm instanceof PairwiseScoreModelI);
+    assertTrue(sm instanceof DistanceScoreModelI);
     assertEquals(sm.getName(), "PID");
   }
 
@@ -92,17 +102,11 @@ public class ScoreModelsTest
    */
   protected void printAllMatrices(boolean asHtml)
   {
-    for (DistanceModelI dm : ScoreModels.getInstance().getModels())
+    for (ScoreModelI sm : ScoreModels.getInstance().getModels())
     {
-      if (dm instanceof PairwiseDistanceModel)
+      if (sm instanceof ScoreMatrix)
       {
-        PairwiseScoreModelI psm = ((PairwiseDistanceModel) dm)
-                .getScoreModel();
-        if (psm instanceof ScoreMatrix)
-        {
-          ScoreMatrix sm = (ScoreMatrix) psm;
-          System.out.println(sm.outputMatrix(asHtml));
-        }
+        System.out.println(((ScoreMatrix) sm).outputMatrix(asHtml));
       }
     }
   }