JAL-2360 removed UserDefinedColours.userColourSchemes
[jalview.git] / test / jalview / schemes / ColourSchemesTest.java
index 1bc6348..6527756 100644 (file)
@@ -1,10 +1,12 @@
 package jalview.schemes;
 
 import static org.testng.Assert.assertEquals;
+import static org.testng.Assert.assertFalse;
 import static org.testng.Assert.assertTrue;
 
 import jalview.bin.Cache;
 import jalview.bin.Jalview;
+import jalview.datamodel.AlignmentI;
 import jalview.datamodel.AnnotatedCollectionI;
 import jalview.datamodel.SequenceCollectionI;
 import jalview.datamodel.SequenceI;
@@ -32,46 +34,52 @@ public class ColourSchemesTest
    */
   class Stripy extends ResidueColourScheme
   {
+    private ColourSchemeI odd;
+
+    private ColourSchemeI even;
+
+    private Stripy()
+    {
+    }
+
+    /**
+     * constructor given colours for odd and even columns
+     * 
+     * @param odd
+     * @param even
+     */
+    private Stripy(ColourSchemeI cs1, ColourSchemeI cs2)
+    {
+      odd = cs1;
+      even = cs2;
+    }
+
     @Override
     public ColourSchemeI getInstance(AnnotatedCollectionI sg,
             Map<SequenceI, SequenceCollectionI> hiddenRepSequences)
     {
-      final ColourSchemeI odd = ColourSchemes.getInstance()
+      final ColourSchemeI cs1 = ColourSchemes.getInstance()
               .getColourScheme(JalviewColourScheme.Taylor.toString(),
                       (AnnotatedCollectionI) null);
-      final ColourSchemeI even = ColourSchemes.getInstance()
+      final ColourSchemeI cs2 = ColourSchemes.getInstance()
               .getColourScheme(JalviewColourScheme.Zappo.toString(),
                       (AnnotatedCollectionI) null);
-      return new ResidueColourScheme() {
-        @Override
-        public Color findColour(char c, int j, SequenceI seq)
-        {
-          if (j % 2 == 1)
-          {
-            return odd.findColour(c, j, seq);
-          }
-          else
-          {
-            return even.findColour(c, j, seq);
-          }
-        }
-
-        @Override
-        public ColourSchemeI getInstance(AnnotatedCollectionI sg,
-                Map<SequenceI, SequenceCollectionI> hiddenRepSequences)
-        {
-          return null;
-        }
+      return new Stripy(cs1, cs2);
+    }
 
-        @Override
-        public String getSchemeName()
-        {
-          return Stripy.this.getSchemeName();
-        }
-        
-      };
+    @Override
+    public Color findColour(char c, int j, SequenceI seq)
+    {
+      if (j % 2 == 1)
+      {
+        return odd.findColour(c, j, seq);
+      }
+      else
+      {
+        return even.findColour(c, j, seq);
+      }
     }
-    
+
     @Override
     public String getSchemeName()
     {
@@ -86,11 +94,11 @@ public class ColourSchemesTest
   {
     ColourSchemeI delegate;
 
-    public MyClustal()
+    private MyClustal()
     {
     }
 
-    public MyClustal(ColourSchemeI scheme)
+    private MyClustal(ColourSchemeI scheme)
     {
       delegate = scheme;
     }
@@ -194,34 +202,35 @@ public class ColourSchemesTest
     ColourSchemes cs = ColourSchemes.getInstance();
 
     AlignViewport viewport = af.getViewport();
+    AlignmentI alignment = viewport.getAlignment();
     assertTrue(cs.getColourScheme(JalviewColourScheme.Blosum62.toString(),
-            viewport) instanceof Blosum62ColourScheme);
+            alignment) instanceof Blosum62ColourScheme);
     assertTrue(cs.getColourScheme(JalviewColourScheme.Buried.toString(),
-            viewport) instanceof BuriedColourScheme);
+            alignment) instanceof BuriedColourScheme);
     assertTrue(cs.getColourScheme(JalviewColourScheme.Clustal.toString(),
-            viewport) instanceof ClustalxColourScheme);
+            alignment) instanceof ClustalxColourScheme);
     assertTrue(cs.getColourScheme(JalviewColourScheme.Helix.toString(),
-            viewport) instanceof HelixColourScheme);
+            alignment) instanceof HelixColourScheme);
     assertTrue(cs.getColourScheme(
-            JalviewColourScheme.Hydrophobic.toString(), viewport) instanceof HydrophobicColourScheme);
+            JalviewColourScheme.Hydrophobic.toString(), alignment) instanceof HydrophobicColourScheme);
     assertTrue(cs.getColourScheme(
-            JalviewColourScheme.Nucleotide.toString(), viewport) instanceof NucleotideColourScheme);
+            JalviewColourScheme.Nucleotide.toString(), alignment) instanceof NucleotideColourScheme);
     assertTrue(cs.getColourScheme(JalviewColourScheme.PID.toString(),
-            viewport) instanceof PIDColourScheme);
+            alignment) instanceof PIDColourScheme);
     assertTrue(cs.getColourScheme(
-            JalviewColourScheme.PurinePyrimidine.toString(), viewport) instanceof PurinePyrimidineColourScheme);
+            JalviewColourScheme.PurinePyrimidine.toString(), alignment) instanceof PurinePyrimidineColourScheme);
     assertTrue(cs.getColourScheme(
-            JalviewColourScheme.RNAHelices.toString(), viewport) instanceof RNAHelicesColour);
+            JalviewColourScheme.RNAHelices.toString(), alignment) instanceof RNAHelicesColour);
     assertTrue(cs.getColourScheme(JalviewColourScheme.Strand.toString(),
-            viewport) instanceof StrandColourScheme);
+            alignment) instanceof StrandColourScheme);
     assertTrue(cs.getColourScheme(JalviewColourScheme.Taylor.toString(),
-            viewport) instanceof TaylorColourScheme);
+            alignment) instanceof TaylorColourScheme);
     assertTrue(cs.getColourScheme(JalviewColourScheme.TCoffee.toString(),
-            viewport) instanceof TCoffeeColourScheme);
+            alignment) instanceof TCoffeeColourScheme);
     assertTrue(cs.getColourScheme(JalviewColourScheme.Turn.toString(),
-            viewport) instanceof TurnColourScheme);
+            alignment) instanceof TurnColourScheme);
     assertTrue(cs.getColourScheme(JalviewColourScheme.Zappo.toString(),
-            viewport) instanceof ZappoColourScheme);
+            alignment) instanceof ZappoColourScheme);
     af.closeMenuItem_actionPerformed(true);
   }
 
@@ -329,4 +338,21 @@ public class ColourSchemesTest
     assertEquals(myclustal2, Color.BLUE);
     assertEquals(myclustal3, Color.ORANGE);
   }
+
+  /**
+   * Tests for check if scheme name exists. Built-in scheme names are the
+   * toString() values of enum JalviewColourScheme.
+   */
+  @Test(groups = "Functional")
+  public void testNameExists()
+  {
+    ColourSchemes cs = ColourSchemes.getInstance();
+    assertFalse(cs.nameExists(null));
+    assertFalse(cs.nameExists(""));
+    assertTrue(cs.nameExists("Clustal"));
+    assertTrue(cs.nameExists("CLUSTAL"));
+    assertFalse(cs.nameExists("CLUSTAL "));
+    assertTrue(cs.nameExists("% Identity"));
+    assertFalse(cs.nameExists("PID"));
+  }
 }