X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=test%2Fjalview%2Fschemes%2FColourSchemePropertyTest.java;h=11562b8feb492d6e3dc7b23f558f5a7189986a03;hb=560515e443e4414372ec4c9cabcf95f61c12720b;hp=efea164571a54fef2eca6190d76ebe5ec342782e;hpb=b0cee3aaf7d8873910939f97b6acb217d518968d;p=jalview.git diff --git a/test/jalview/schemes/ColourSchemePropertyTest.java b/test/jalview/schemes/ColourSchemePropertyTest.java index efea164..11562b8 100644 --- a/test/jalview/schemes/ColourSchemePropertyTest.java +++ b/test/jalview/schemes/ColourSchemePropertyTest.java @@ -1,17 +1,21 @@ package jalview.schemes; import static org.testng.Assert.assertEquals; +import static org.testng.Assert.assertNull; +import static org.testng.Assert.assertTrue; import jalview.datamodel.Alignment; import jalview.datamodel.AlignmentI; import jalview.datamodel.Sequence; import jalview.datamodel.SequenceI; +import java.awt.Color; + import org.testng.annotations.Test; public class ColourSchemePropertyTest { - @Test + @Test(groups = "Functional") public void testGetColourName() { SequenceI seq = new Sequence("Seq1", "abcd"); @@ -65,4 +69,67 @@ public class ColourSchemePropertyTest assertEquals(ColourSchemeProperty.getColourName(null), "None"); } + + @Test(groups = "Functional") + public void testGetColourScheme() + { + SequenceI seq = new Sequence("Seq1", "abcd"); + AlignmentI al = new Alignment(new SequenceI[] { seq }); + // the strings here correspond to JalviewColourScheme.toString() values + ColourSchemeI cs = ColourSchemeProperty.getColourScheme(al, "Clustal"); + assertTrue(cs instanceof ClustalxColourScheme); + // not case-sensitive + cs = ColourSchemeProperty.getColourScheme(al, "CLUSTAL"); + assertTrue(cs instanceof ClustalxColourScheme); + cs = ColourSchemeProperty.getColourScheme(al, "clustal"); + assertTrue(cs instanceof ClustalxColourScheme); + cs = ColourSchemeProperty.getColourScheme(al, "Blosum62"); + assertTrue(cs instanceof Blosum62ColourScheme); + cs = ColourSchemeProperty.getColourScheme(al, "% Identity"); + assertTrue(cs instanceof PIDColourScheme); + cs = ColourSchemeProperty.getColourScheme(al, "Zappo"); + assertTrue(cs instanceof ZappoColourScheme); + cs = ColourSchemeProperty.getColourScheme(al, "Taylor"); + assertTrue(cs instanceof TaylorColourScheme); + cs = ColourSchemeProperty.getColourScheme(al, "Hydrophobic"); + assertTrue(cs instanceof HydrophobicColourScheme); + cs = ColourSchemeProperty.getColourScheme(al, "Helix Propensity"); + assertTrue(cs instanceof HelixColourScheme); + cs = ColourSchemeProperty.getColourScheme(al, "Strand Propensity"); + assertTrue(cs instanceof StrandColourScheme); + cs = ColourSchemeProperty.getColourScheme(al, "Turn Propensity"); + assertTrue(cs instanceof TurnColourScheme); + cs = ColourSchemeProperty.getColourScheme(al, "Buried Index"); + assertTrue(cs instanceof BuriedColourScheme); + cs = ColourSchemeProperty.getColourScheme(al, "Nucleotide"); + assertTrue(cs instanceof NucleotideColourScheme); + cs = ColourSchemeProperty.getColourScheme(al, "Purine/Pyrimidine"); + assertTrue(cs instanceof PurinePyrimidineColourScheme); + cs = ColourSchemeProperty.getColourScheme(al, "T-Coffee Scores"); + assertTrue(cs instanceof TCoffeeColourScheme); + cs = ColourSchemeProperty.getColourScheme(al, "RNA Helices"); + assertTrue(cs instanceof RNAHelicesColour); + // 'None' is a special value + assertNull(ColourSchemeProperty.getColourScheme(al, "None")); + assertNull(ColourSchemeProperty.getColourScheme(al, "none")); + // default is to convert the name into a fixed colour + cs = ColourSchemeProperty.getColourScheme(al, "elephants"); + assertTrue(cs instanceof UserColourScheme); + + /* + * explicit aa colours + */ + UserColourScheme ucs = (UserColourScheme) ColourSchemeProperty + .getColourScheme(al, + "R,G=red;C=blue;c=green;Q=10,20,30;S,T=11ffdd"); + assertEquals(ucs.findColour('H'), Color.white); + assertEquals(ucs.findColour('R'), Color.red); + assertEquals(ucs.findColour('r'), Color.red); + assertEquals(ucs.findColour('G'), Color.red); + assertEquals(ucs.findColour('C'), Color.blue); + assertEquals(ucs.findColour('c'), Color.green); + assertEquals(ucs.findColour('Q'), new Color(10, 20, 30)); + assertEquals(ucs.findColour('S'), new Color(0x11ffdd)); + assertEquals(ucs.findColour('T'), new Color(0x11ffdd)); + } }