1518fb354611deb50418fc04a844dd32a30ec4cd
[jalview.git] / test / jalview / schemes / PIDColourSchemeTest.java
1 package jalview.schemes;
2
3 import static org.testng.Assert.assertEquals;
4
5 import java.awt.Color;
6
7 import org.testng.annotations.Test;
8
9 public class PIDColourSchemeTest
10 {
11   /**
12    * Test findColour for cases:
13    * <ul>
14    * <li>gap: white</li>
15    * <li>no match to consensus: white</li>
16    * <li>match consensus with pid > 80%: 100,100,255</li>
17    * <li>match consensus with pid > 60%: 153, 153, 255</li>
18    * <li>match consensus with pid > 40%: 204, 204, 255</li>
19    * <li>match consensus with pid <= 40%: white</li>
20    * <li>joint consensus matching</li>
21    * <li>case insensitive matching</li>
22    * <ul>
23    */
24   @Test
25   public void testFindColour()
26   {
27     ColourSchemeI scheme = new PIDColourScheme();
28
29     Color over40 = new Color(204, 204, 255);
30     Color over60 = new Color(153, 153, 255);
31     Color over80 = new Color(100, 100, 255);
32
33     /*
34      * doesn't use column or sequence
35      */
36     assertEquals(scheme.findColour('A', 0, null, "A", 0f), Color.white);
37     assertEquals(scheme.findColour('A', 0, null, "A", 40f), Color.white);
38     assertEquals(scheme.findColour('A', 0, null, "A", 40.1f), over40);
39     assertEquals(scheme.findColour('A', 0, null, "A", 60f), over40);
40     assertEquals(scheme.findColour('A', 0, null, "A", 60.1f), over60);
41     assertEquals(scheme.findColour('A', 0, null, "A", 80f), over60);
42     assertEquals(scheme.findColour('A', 0, null, "A", 80.1f), over80);
43     assertEquals(scheme.findColour('A', 0, null, "A", 100f), over80);
44
45     assertEquals(scheme.findColour('a', 0, null, "A", 80f), over60);
46     assertEquals(scheme.findColour('A', 0, null, "a", 80f), over60);
47     assertEquals(scheme.findColour('a', 0, null, "a", 80f), over60);
48     assertEquals(scheme.findColour('A', 0, null, "AC", 80f), over60);
49     assertEquals(scheme.findColour('A', 0, null, "KCA", 80f), over60);
50   }
51 }