X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=test%2Fjalview%2Fschemes%2FColourSchemesTest.java;h=5db374369efc599e7015ba1cd4f78149df03c844;hb=d87b55e45cc1e6a5b7df3865ded1b87a0e3dc7ff;hp=e44ed71432909da43056ab74552efce115b4ca94;hpb=92bd4313e2f23a65df1eb965e836d178c1eacdd1;p=jalview.git diff --git a/test/jalview/schemes/ColourSchemesTest.java b/test/jalview/schemes/ColourSchemesTest.java index e44ed71..5db3743 100644 --- a/test/jalview/schemes/ColourSchemesTest.java +++ b/test/jalview/schemes/ColourSchemesTest.java @@ -1,16 +1,17 @@ package jalview.schemes; import static org.testng.Assert.assertEquals; +import static org.testng.Assert.assertFalse; +import static org.testng.Assert.assertSame; import static org.testng.Assert.assertTrue; +import jalview.api.AlignViewportI; import jalview.bin.Cache; import jalview.bin.Jalview; -import jalview.datamodel.AlignmentI; import jalview.datamodel.AnnotatedCollectionI; import jalview.datamodel.SequenceCollectionI; import jalview.datamodel.SequenceI; import jalview.gui.AlignFrame; -import jalview.gui.AlignViewport; import jalview.gui.Desktop; import jalview.gui.SequenceRenderer; import jalview.io.DataSourceType; @@ -33,46 +34,52 @@ public class ColourSchemesTest */ class Stripy extends ResidueColourScheme { + private ResidueColourScheme odd; + + private ResidueColourScheme even; + + private Stripy() + { + } + + /** + * constructor given colours for odd and even columns + * + * @param odd + * @param even + */ + private Stripy(ColourSchemeI cs1, ColourSchemeI cs2) + { + odd = (ResidueColourScheme) cs1; + even = (ResidueColourScheme) cs2; + } + @Override - public ColourSchemeI getInstance(AnnotatedCollectionI sg, - Map hiddenRepSequences) + public ColourSchemeI getInstance(AlignViewportI view, + AnnotatedCollectionI sg) { - final ColourSchemeI odd = ColourSchemes.getInstance() + final ColourSchemeI cs1 = ColourSchemes.getInstance() .getColourScheme(JalviewColourScheme.Taylor.toString(), (AnnotatedCollectionI) null); - final ColourSchemeI even = ColourSchemes.getInstance() + final ColourSchemeI cs2 = ColourSchemes.getInstance() .getColourScheme(JalviewColourScheme.Zappo.toString(), (AnnotatedCollectionI) null); - return new ResidueColourScheme() { - @Override - public Color findColour(char c, int j, SequenceI seq) - { - if (j % 2 == 1) - { - return odd.findColour(c, j, seq); - } - else - { - return even.findColour(c, j, seq); - } - } - - @Override - public ColourSchemeI getInstance(AnnotatedCollectionI ac, - Map hrs) - { - return null; - } + return new Stripy(cs1, cs2); + } - @Override - public String getSchemeName() - { - return Stripy.this.getSchemeName(); - } - - }; + @Override + public Color findColour(char c, int j, SequenceI seq) + { + if (j % 2 == 1) + { + return odd.findColour(c, j, seq); + } + else + { + return even.findColour(c, j, seq); + } } - + @Override public String getSchemeName() { @@ -85,15 +92,16 @@ public class ColourSchemesTest */ class MyClustal extends ResidueColourScheme { - ColourSchemeI delegate; + ClustalxColourScheme delegate; - public MyClustal() + private MyClustal() { } - public MyClustal(ColourSchemeI scheme) + private MyClustal(AnnotatedCollectionI sg, + Map hiddenRepSequences) { - delegate = scheme; + delegate = new ClustalxColourScheme(sg, hiddenRepSequences); } @Override @@ -137,11 +145,10 @@ public class ColourSchemesTest } @Override - public ColourSchemeI getInstance(AnnotatedCollectionI sg, - Map hiddenRepSequences) + public ColourSchemeI getInstance(AlignViewportI view, + AnnotatedCollectionI sg) { - return new MyClustal(new ClustalxColourScheme().getInstance(sg, - hiddenRepSequences)); + return new MyClustal(sg, view.getHiddenRepSequences()); } @Override @@ -188,77 +195,19 @@ public class ColourSchemesTest } @Test(groups = "Functional") - public void testGetColourScheme_forViewport() - { - AlignFrame af = new FileLoader().LoadFileWaitTillLoaded( - ">seq1\nAGLRTWQU", DataSourceType.PASTE); - ColourSchemes cs = ColourSchemes.getInstance(); - - AlignViewport viewport = af.getViewport(); - AlignmentI alignment = viewport.getAlignment(); - assertTrue(cs.getColourScheme(JalviewColourScheme.Blosum62.toString(), - alignment) instanceof Blosum62ColourScheme); - assertTrue(cs.getColourScheme(JalviewColourScheme.Buried.toString(), - alignment) instanceof BuriedColourScheme); - assertTrue(cs.getColourScheme(JalviewColourScheme.Clustal.toString(), - alignment) instanceof ClustalxColourScheme); - assertTrue(cs.getColourScheme(JalviewColourScheme.Helix.toString(), - alignment) instanceof HelixColourScheme); - assertTrue(cs.getColourScheme( - JalviewColourScheme.Hydrophobic.toString(), alignment) instanceof HydrophobicColourScheme); - assertTrue(cs.getColourScheme( - JalviewColourScheme.Nucleotide.toString(), alignment) instanceof NucleotideColourScheme); - assertTrue(cs.getColourScheme(JalviewColourScheme.PID.toString(), - alignment) instanceof PIDColourScheme); - assertTrue(cs.getColourScheme( - JalviewColourScheme.PurinePyrimidine.toString(), alignment) instanceof PurinePyrimidineColourScheme); - assertTrue(cs.getColourScheme( - JalviewColourScheme.RNAHelices.toString(), alignment) instanceof RNAHelicesColour); - assertTrue(cs.getColourScheme(JalviewColourScheme.Strand.toString(), - alignment) instanceof StrandColourScheme); - assertTrue(cs.getColourScheme(JalviewColourScheme.Taylor.toString(), - alignment) instanceof TaylorColourScheme); - assertTrue(cs.getColourScheme(JalviewColourScheme.TCoffee.toString(), - alignment) instanceof TCoffeeColourScheme); - assertTrue(cs.getColourScheme(JalviewColourScheme.Turn.toString(), - alignment) instanceof TurnColourScheme); - assertTrue(cs.getColourScheme(JalviewColourScheme.Zappo.toString(), - alignment) instanceof ZappoColourScheme); - af.closeMenuItem_actionPerformed(true); - } - - @Test(groups = "Functional") - public void testGetColourScheme_forAnnotatedCollection() + public void testGetColourScheme() { AlignFrame af = new FileLoader().LoadFileWaitTillLoaded( ">seq1\nAGLRTWQU", DataSourceType.PASTE); - ColourSchemes cs = ColourSchemes.getInstance(); + ColourSchemes schemes = ColourSchemes.getInstance(); AnnotatedCollectionI al = af.getViewport().getAlignment(); - assertTrue(cs.getColourScheme(JalviewColourScheme.Blosum62.toString(), - al) instanceof Blosum62ColourScheme); - assertTrue(cs - .getColourScheme(JalviewColourScheme.Buried.toString(), al) instanceof BuriedColourScheme); - assertTrue(cs.getColourScheme(JalviewColourScheme.Clustal.toString(), - al) instanceof ClustalxColourScheme); - assertTrue(cs.getColourScheme(JalviewColourScheme.Helix.toString(), al) instanceof HelixColourScheme); - assertTrue(cs.getColourScheme( - JalviewColourScheme.Hydrophobic.toString(), al) instanceof HydrophobicColourScheme); - assertTrue(cs.getColourScheme( - JalviewColourScheme.Nucleotide.toString(), al) instanceof NucleotideColourScheme); - assertTrue(cs.getColourScheme(JalviewColourScheme.PID.toString(), al) instanceof PIDColourScheme); - assertTrue(cs.getColourScheme( - JalviewColourScheme.PurinePyrimidine.toString(), al) instanceof PurinePyrimidineColourScheme); - assertTrue(cs.getColourScheme( - JalviewColourScheme.RNAHelices.toString(), al) instanceof RNAHelicesColour); - assertTrue(cs - .getColourScheme(JalviewColourScheme.Strand.toString(), al) instanceof StrandColourScheme); - assertTrue(cs - .getColourScheme(JalviewColourScheme.Taylor.toString(), al) instanceof TaylorColourScheme); - assertTrue(cs.getColourScheme(JalviewColourScheme.TCoffee.toString(), - al) instanceof TCoffeeColourScheme); - assertTrue(cs.getColourScheme(JalviewColourScheme.Turn.toString(), al) instanceof TurnColourScheme); - assertTrue(cs.getColourScheme(JalviewColourScheme.Zappo.toString(), al) instanceof ZappoColourScheme); + + for (JalviewColourScheme cs : JalviewColourScheme.values()) + { + ColourSchemeI registered = schemes.getColourScheme(cs.toString(), al); + assertSame(registered.getClass(), cs.getSchemeClass()); + } af.closeMenuItem_actionPerformed(true); } @@ -280,9 +229,9 @@ public class ColourSchemesTest * set and check Taylor colours */ af.changeColour_actionPerformed(JalviewColourScheme.Taylor.toString()); - Color taylor1 = sr.getResidueBoxColour(seq, 88); // E 255,0,102 - Color taylor2 = sr.getResidueBoxColour(seq, 89); // A 204,255,0 - Color taylor3 = sr.getResidueBoxColour(seq, 90); // G 255,153,0 + Color taylor1 = sr.getResidueColour(seq, 88, null); // E 255,0,102 + Color taylor2 = sr.getResidueColour(seq, 89, null); // A 204,255,0 + Color taylor3 = sr.getResidueColour(seq, 90, null); // G 255,153,0 assertEquals(taylor1, new Color(255, 0, 102)); assertEquals(taylor2, new Color(204, 255, 0)); assertEquals(taylor3, new Color(255, 153, 0)); @@ -291,9 +240,9 @@ public class ColourSchemesTest * set and check Zappo colours */ af.changeColour_actionPerformed(JalviewColourScheme.Zappo.toString()); - Color zappo1 = sr.getResidueBoxColour(seq, 88); // E red - Color zappo2 = sr.getResidueBoxColour(seq, 89); // A pink - Color zappo3 = sr.getResidueBoxColour(seq, 90); // G magenta + Color zappo1 = sr.getResidueColour(seq, 88, null); // E red + Color zappo2 = sr.getResidueColour(seq, 89, null); // A pink + Color zappo3 = sr.getResidueColour(seq, 90, null); // G magenta assertEquals(zappo1, Color.red); assertEquals(zappo2, Color.pink); assertEquals(zappo3, Color.magenta); @@ -302,9 +251,9 @@ public class ColourSchemesTest * set 'stripy' colours - odd columns are Taylor and even are Zappo */ af.changeColour_actionPerformed("stripy"); - Color stripy1 = sr.getResidueBoxColour(seq, 88); - Color stripy2 = sr.getResidueBoxColour(seq, 89); - Color stripy3 = sr.getResidueBoxColour(seq, 90); + Color stripy1 = sr.getResidueColour(seq, 88, null); + Color stripy2 = sr.getResidueColour(seq, 89, null); + Color stripy3 = sr.getResidueColour(seq, 90, null); assertEquals(stripy1, zappo1); assertEquals(stripy2, taylor2); assertEquals(stripy3, zappo3); @@ -313,9 +262,9 @@ public class ColourSchemesTest * set and check Clustal colours */ af.changeColour_actionPerformed(JalviewColourScheme.Clustal.toString()); - Color clustal1 = sr.getResidueBoxColour(seq, 88); - Color clustal2 = sr.getResidueBoxColour(seq, 89); - Color clustal3 = sr.getResidueBoxColour(seq, 90); + Color clustal1 = sr.getResidueColour(seq, 88, null); + Color clustal2 = sr.getResidueColour(seq, 89, null); + Color clustal3 = sr.getResidueColour(seq, 90, null); assertEquals(clustal1, ClustalColour.MAGENTA.colour); assertEquals(clustal2, ClustalColour.BLUE.colour); assertEquals(clustal3, ClustalColour.ORANGE.colour); @@ -324,11 +273,28 @@ public class ColourSchemesTest * set 'MyClustal' colours - uses AWT colour equivalents */ af.changeColour_actionPerformed("MyClustal"); - Color myclustal1 = sr.getResidueBoxColour(seq, 88); - Color myclustal2 = sr.getResidueBoxColour(seq, 89); - Color myclustal3 = sr.getResidueBoxColour(seq, 90); + Color myclustal1 = sr.getResidueColour(seq, 88, null); + Color myclustal2 = sr.getResidueColour(seq, 89, null); + Color myclustal3 = sr.getResidueColour(seq, 90, null); assertEquals(myclustal1, Color.MAGENTA); assertEquals(myclustal2, Color.BLUE); assertEquals(myclustal3, Color.ORANGE); } + + /** + * Tests for check if scheme name exists. Built-in scheme names are the + * toString() values of enum JalviewColourScheme. + */ + @Test(groups = "Functional") + public void testNameExists() + { + ColourSchemes cs = ColourSchemes.getInstance(); + assertFalse(cs.nameExists(null)); + assertFalse(cs.nameExists("")); + assertTrue(cs.nameExists("Clustal")); + assertTrue(cs.nameExists("CLUSTAL")); + assertFalse(cs.nameExists("CLUSTAL ")); + assertTrue(cs.nameExists("% Identity")); + assertFalse(cs.nameExists("PID")); + } }