88f433135768382ed6ef904c6033331b8893c19d
[jalview.git] / test / jalview / schemes / UserColourSchemeTest.java
1 package jalview.schemes;
2
3 import static org.testng.AssertJUnit.assertEquals;
4 import static org.testng.AssertJUnit.assertNull;
5 import static org.testng.AssertJUnit.assertSame;
6
7 import java.awt.Color;
8
9 import org.testng.annotations.Test;
10 public class UserColourSchemeTest
11 {
12
13   @Test(groups = "functional")
14   public void testGetColourFromString()
15   {
16     /*
17      * by colour name - if known to AWT, and included in
18      * 
19      * @see ColourSchemeProperty.getAWTColorFromName()
20      */
21     assertSame(Color.RED, UserColourScheme.getColourFromString("red"));
22     assertSame(Color.RED, UserColourScheme.getColourFromString("Red"));
23     assertSame(Color.RED, UserColourScheme.getColourFromString(" RED "));
24
25     /*
26      * by RGB hex code
27      */
28     String hexColour = Integer.toHexString(Color.RED.getRGB() & 0xffffff);
29     assertEquals(Color.RED, UserColourScheme.getColourFromString(hexColour));
30     // 'hex' prefixes _not_ wanted here
31     assertNull(UserColourScheme.getColourFromString("0x" + hexColour));
32     assertNull(UserColourScheme.getColourFromString("#" + hexColour));
33
34     /*
35      * by RGB triplet
36      */
37     String rgb = String.format("%d,%d,%d", Color.red.getRed(),
38             Color.red.getGreen(), Color.red.getBlue());
39     assertEquals(Color.RED, UserColourScheme.getColourFromString(rgb));
40
41     /*
42      * odds and ends
43      */
44     assertNull(UserColourScheme.getColourFromString(null));
45     assertNull(UserColourScheme.getColourFromString("rubbish"));
46     assertEquals(Color.WHITE, UserColourScheme.getColourFromString("-1"));
47     assertNull(UserColourScheme.getColourFromString(String
48             .valueOf(Integer.MAX_VALUE)));
49   }
50 }