import static org.testng.AssertJUnit.assertEquals;
import static org.testng.AssertJUnit.assertFalse;
import static org.testng.AssertJUnit.assertNotNull;
+import static org.testng.AssertJUnit.assertNotSame;
import static org.testng.AssertJUnit.assertSame;
import static org.testng.AssertJUnit.assertTrue;
+import jalview.api.AlignViewportI;
import jalview.bin.Cache;
import jalview.bin.Jalview;
import jalview.datamodel.AlignedCodonFrame;
import jalview.datamodel.AlignmentAnnotation;
import jalview.datamodel.AlignmentI;
import jalview.datamodel.Annotation;
-import jalview.datamodel.PDBEntry;
-import jalview.datamodel.PDBEntry.Type;
import jalview.datamodel.SearchResults;
import jalview.datamodel.SearchResultsI;
import jalview.datamodel.Sequence;
import jalview.datamodel.SequenceI;
import jalview.io.DataSourceType;
import jalview.io.FileLoader;
+import jalview.schemes.ClustalxColourScheme;
import jalview.schemes.ColourSchemeI;
import jalview.schemes.PIDColourScheme;
import jalview.structure.StructureSelectionManager;
import jalview.util.MapList;
+import jalview.viewmodel.AlignmentViewport;
import jalview.viewmodel.ViewportRanges;
import java.util.ArrayList;
AlignmentI al;
- AlignViewport testee;
+ AlignmentViewport testee;
@BeforeClass(alwaysRun = true)
public static void setUpBeforeClass() throws Exception
AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(
"examples/uniref50.fa", DataSourceType.FILE);
ColourSchemeI cs = new PIDColourScheme();
- af.getViewport().setGlobalColourScheme(cs);
- assertFalse(af.getViewport().getResidueShading()
+ AlignViewport viewport = af.getViewport();
+ viewport.setGlobalColourScheme(cs);
+ assertFalse(viewport.getResidueShading()
.conservationApplied());
+
+ /*
+ * JAL-3201 groups have their own ColourSchemeI instances
+ */
+ AlignmentI aln = viewport.getAlignment();
+ SequenceGroup sg1 = new SequenceGroup();
+ sg1.addSequence(aln.getSequenceAt(0), false);
+ sg1.addSequence(aln.getSequenceAt(2), false);
+ SequenceGroup sg2 = new SequenceGroup();
+ sg2.addSequence(aln.getSequenceAt(1), false);
+ sg2.addSequence(aln.getSequenceAt(3), false);
+ aln.addGroup(sg1);
+ aln.addGroup(sg2);
+ viewport.setColourAppliesToAllGroups(true);
+ viewport.setGlobalColourScheme(new ClustalxColourScheme());
+ ColourSchemeI cs0 = viewport.getGlobalColourScheme();
+ ColourSchemeI cs1 = sg1.getColourScheme();
+ ColourSchemeI cs2 = sg2.getColourScheme();
+ assertTrue(cs0 instanceof ClustalxColourScheme);
+ assertTrue(cs1 instanceof ClustalxColourScheme);
+ assertTrue(cs2 instanceof ClustalxColourScheme);
+ assertNotSame(cs0, cs1);
+ assertNotSame(cs0, cs2);
+ assertNotSame(cs1, cs2);
}
@Test(groups = { "Functional" })
{
AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(
"examples/uniref50.fa", DataSourceType.FILE);
- AlignViewport av = af.getViewport();
+ AlignViewportI av = af.getViewport();
SequenceGroup sg1 = new SequenceGroup();
SequenceGroup sg2 = new SequenceGroup();
SequenceGroup sg3 = new SequenceGroup();
jalview.bin.Cache.setProperty("SHOW_OCCUPANCY", Boolean.FALSE.toString());
AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(
"examples/uniref50.fa", DataSourceType.FILE);
- AlignViewport av = af.getViewport();
- Assert.assertNull(av.getAlignmentGapAnnotation(), "Preference did not disable occupancy row.");
+ AlignViewportI av = af.getViewport();
+ Assert.assertNull(av.getOccupancyAnnotation(), "Preference did not disable occupancy row.");
int c = 0;
for (AlignmentAnnotation aa : av.getAlignment().findAnnotations(null,
null, "Occupancy"))
af = new FileLoader().LoadFileWaitTillLoaded(
"examples/uniref50.fa", DataSourceType.FILE);
av = af.getViewport();
- Assert.assertNotNull(av.getAlignmentGapAnnotation(), "Preference did not enable occupancy row.");
+ Assert.assertNotNull(av.getOccupancyAnnotation(), "Preference did not enable occupancy row.");
c = 0;
for (AlignmentAnnotation aa : av.getAlignment().findAnnotations(null,
- null, av.getAlignmentGapAnnotation().label))
+ null, av.getOccupancyAnnotation().label))
{
c++;
}
String fasta = ">s1\nA-C\n>s2\nA-C\n>s3\nA-D\n>s4\n--D\n";
AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(fasta,
DataSourceType.PASTE);
- AlignViewport testme = af.getViewport();
+ AlignmentViewport testme = af.getViewport();
SequenceI cons = testme.getConsensusSeq();
assertEquals("A-C", cons.getSequenceAsString());
}