Merge branch 'develop' into update_212_Dec_merge_with_21125_chamges
[jalview.git] / test / jalview / util / ColorUtilsTest.java
index 77a03d6..1ee0392 100644 (file)
@@ -24,13 +24,13 @@ import static org.testng.AssertJUnit.assertEquals;
 import static org.testng.AssertJUnit.assertNull;
 import static org.testng.AssertJUnit.assertSame;
 
-import jalview.gui.JvOptionPane;
 
 import java.awt.Color;
 
 import org.testng.annotations.BeforeClass;
 import org.testng.annotations.Test;
 
+import jalview.gui.JvOptionPane;
 public class ColorUtilsTest
 {
 
@@ -206,15 +206,16 @@ public class ColorUtilsTest
      */
     assertNull(ColorUtils.parseColourString(null));
     assertNull(ColorUtils.parseColourString("rubbish"));
+    // from 2.11.2
     assertEquals(Color.WHITE, ColorUtils.parseColourString("-1"));
-    assertNull(ColorUtils.parseColourString(String
-            .valueOf(Integer.MAX_VALUE)));
+    assertNull(ColorUtils
+            .parseColourString(String.valueOf(Integer.MAX_VALUE)));
     assertNull(ColorUtils.parseColourString("100,200,300")); // out of range
     assertNull(ColorUtils.parseColourString("100,200")); // too few
     assertNull(ColorUtils.parseColourString("100,200,100,200")); // too many
   }
 
-  @Test
+  @Test(groups = "Functional")
   public void testGetAWTColorFromName() {
     assertEquals(Color.white, ColorUtils.getAWTColorFromName("white"));
     assertEquals(Color.white, ColorUtils.getAWTColorFromName("White"));
@@ -224,4 +225,23 @@ public class ColorUtilsTest
     assertNull(ColorUtils.getAWTColorFromName(""));
     assertNull(ColorUtils.getAWTColorFromName(null));
   }
+
+  @Test(groups = "Functional")
+  public void testCreateColourFromName()
+  {
+    assertEquals(Color.white, ColorUtils.createColourFromName(null));
+    assertEquals(new Color(20, 20, 20), ColorUtils.createColourFromName(""));
+    assertEquals(new Color(98, 131, 171),
+            ColorUtils.createColourFromName("None")); // no special treatment!
+    assertEquals(new Color(123, 211, 122),
+            ColorUtils.createColourFromName("hello world"));
+    assertEquals(new Color(27, 147, 112),
+            ColorUtils.createColourFromName("HELLO WORLD"));
+    /*
+     * the algorithm makes the same values for r,g,b if 
+     * the string consists of 3 repeating substrings
+     */
+    assertEquals(new Color(184, 184, 184),
+            ColorUtils.createColourFromName("HELLO HELLO HELLO "));
+  }
 }