+package jalview.schemes;
+
+import static org.testng.Assert.assertEquals;
+
+import jalview.io.DataSourceType;
+import jalview.io.FileParse;
+import jalview.io.HMMFile;
+
+import java.awt.Color;
+import java.io.IOException;
+import java.net.MalformedURLException;
+
+import org.testng.annotations.Test;
+
+public class HMMERColourSchemeTest {
+ HMMERColourScheme scheme = new HMMERColourScheme();
+
+ @Test
+ public void testFindColour() throws MalformedURLException, IOException
+ {
+
+ HMMFile file = new HMMFile(new FileParse(
+ "test/jalview/io/test_PKinase_hmm.txt", DataSourceType.FILE));
+ file.parse();
+ scheme.hmm = file.getHMM();
+
+ Color actual = scheme.findColour('A', 1);
+ Color expected = new Color(1f, 1f - 0.06253430455f, 0f);
+ assertEquals(actual, expected);
+
+ actual = scheme.findColour('Y', 3);
+ expected = new Color(1f, 1f - 0.02082023351f, 0f);
+ assertEquals(actual, expected);
+
+ actual = scheme.findColour('M', 109);
+ expected = new Color(1f, 1f, 0);
+ assertEquals(actual, expected);
+
+ actual = scheme.findColour('I', 128);
+ expected = new Color(1f, 1f - 0.15097062462f, 0);
+ assertEquals(actual, expected);
+
+ actual = scheme.findColour('D', 181);
+ expected = new Color(1f, 1f - 0.08686935114f, 0);
+ assertEquals(actual, expected);
+
+ actual = scheme.findColour('Z', 1);
+ expected = new Color(1f, 1f, 0);
+ assertEquals(actual, expected);
+
+ actual = scheme.findColour('A', 4000);
+ expected = new Color(1f, 1f, 0);
+ assertEquals(actual, expected);
+
+ }
+
+}