JAL-2589 render colour scheme gap colour in overview
[jalview.git] / test / jalview / renderer / seqfeatures / FeatureColourFinderTest.java
index a7f2289..9b68b43 100644 (file)
@@ -2,6 +2,7 @@ package jalview.renderer.seqfeatures;
 
 import static org.testng.Assert.assertEquals;
 import static org.testng.Assert.assertFalse;
+import static org.testng.Assert.assertNull;
 import static org.testng.Assert.assertTrue;
 
 import jalview.api.FeatureColourI;
@@ -16,8 +17,8 @@ import jalview.schemes.FeatureColour;
 
 import java.awt.Color;
 
-import org.testng.annotations.BeforeClass;
 import org.testng.annotations.BeforeMethod;
+import org.testng.annotations.BeforeTest;
 import org.testng.annotations.Test;
 
 /**
@@ -49,7 +50,7 @@ public class FeatureColourFinderTest
 
   private FeatureRenderer fr;
 
-  @BeforeClass(alwaysRun = true)
+  @BeforeTest(alwaysRun = true)
   public void setUp()
   {
     // aligned column 8 is sequence position 6
@@ -63,7 +64,8 @@ public class FeatureColourFinderTest
   }
 
   /**
-   * Clear down any sequence features before each test
+   * Clear down any sequence features before each test (not as easy as it
+   * sounds...)
    */
   @BeforeMethod(alwaysRun = true)
   public void setUpBeforeTest()
@@ -85,6 +87,9 @@ public class FeatureColourFinderTest
     {
       fr.setGroupVisibility(group, true);
     }
+
+    fr.clearRenderOrder();
+    av.setShowSequenceFeatures(true);
   }
 
   @Test(groups = "Functional")
@@ -122,6 +127,10 @@ public class FeatureColourFinderTest
     assertEquals(c, Color.red);
   }
 
+  /**
+   * feature colour at a gap is null (not white) - a user defined colour scheme
+   * can then provide a bespoke gap colour if configured to do so
+   */
   @Test(groups = "Functional")
   public void testFindFeatureColour_gapPosition()
   {
@@ -131,7 +140,7 @@ public class FeatureColourFinderTest
     fr.featuresAdded();
     av.setShowSequenceFeatures(true);
     Color c = finder.findFeatureColour(null, seq, 6);
-    assertEquals(c, Color.white);
+    assertNull(c);
   }
 
   @Test(groups = "Functional")
@@ -397,9 +406,10 @@ public class FeatureColourFinderTest
 
     /*
      * add a feature
-     * it will be automatically set visible but the viewport
-     * is still configured not to show features
+     * it will be automatically set visible but we leave
+     * the viewport configured not to show features
      */
+    av.setShowSequenceFeatures(false);
     seq.addSequenceFeature(new SequenceFeature("Metal", "Metal", 2, 12,
             Float.NaN, "MetalGroup"));
     FeatureColour red = new FeatureColour(Color.red);
@@ -433,5 +443,11 @@ public class FeatureColourFinderTest
      */
     fr.setGroupVisibility("MetalGroup", false);
     assertFalse(finder.noFeaturesDisplayed());
+
+    /*
+     * a finder with no feature renderer
+     */
+    FeatureColourFinder finder2 = new FeatureColourFinder(null);
+    assertTrue(finder2.noFeaturesDisplayed());
   }
 }