package jalview.schemes; import static org.testng.AssertJUnit.assertEquals; import static org.testng.AssertJUnit.assertNull; import static org.testng.AssertJUnit.assertSame; import java.awt.Color; import org.testng.annotations.Test; public class UserColourSchemeTest { @Test(groups = "Functional") public void testGetColourFromString() { /* * by colour name - if known to AWT, and included in * * @see ColourSchemeProperty.getAWTColorFromName() */ assertSame(Color.RED, UserColourScheme.getColourFromString("red")); assertSame(Color.RED, UserColourScheme.getColourFromString("Red")); assertSame(Color.RED, UserColourScheme.getColourFromString(" RED ")); /* * by RGB hex code */ String hexColour = Integer.toHexString(Color.RED.getRGB() & 0xffffff); assertEquals(Color.RED, UserColourScheme.getColourFromString(hexColour)); // 'hex' prefixes _not_ wanted here assertNull(UserColourScheme.getColourFromString("0x" + hexColour)); assertNull(UserColourScheme.getColourFromString("#" + hexColour)); /* * by RGB triplet */ String rgb = String.format("%d,%d,%d", Color.red.getRed(), Color.red.getGreen(), Color.red.getBlue()); assertEquals(Color.RED, UserColourScheme.getColourFromString(rgb)); /* * odds and ends */ assertNull(UserColourScheme.getColourFromString(null)); assertNull(UserColourScheme.getColourFromString("rubbish")); assertEquals(Color.WHITE, UserColourScheme.getColourFromString("-1")); assertNull(UserColourScheme.getColourFromString(String .valueOf(Integer.MAX_VALUE))); } }