X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=test%2Fjalview%2Fgui%2FAlignFrameTest.java;h=f13a8776e0694b661e7d42430693a5faaecadc57;hb=1d6ce1bd2d0cf108d6207694e4aa6b845de11049;hp=bdda48d95c6c6ca6a3483b1e5ab6168a66d1d12f;hpb=0d11e2fa31e8cdacb7424c546b952786e1ca538b;p=jalview.git diff --git a/test/jalview/gui/AlignFrameTest.java b/test/jalview/gui/AlignFrameTest.java index bdda48d..f13a877 100644 --- a/test/jalview/gui/AlignFrameTest.java +++ b/test/jalview/gui/AlignFrameTest.java @@ -20,6 +20,7 @@ */ package jalview.gui; +import static org.junit.Assert.assertNotEquals; import static org.testng.Assert.assertEquals; import static org.testng.Assert.assertFalse; import static org.testng.Assert.assertNotSame; @@ -599,4 +600,26 @@ public class AlignFrameTest sp.valueChanged(22); assertEquals(av2.getResidueShading().getConservationInc(), 22); } + + /** + * Verify that making a New View preserves the dataset reference for the + * alignment. Otherwise, see a 'duplicate jar entry' reference when trying to + * save alignments with multiple views, and codon mappings will not be shared + * across all panels in a split frame. + * + * @see Jalview2xmlTests#testStoreAndRecoverColourThresholds() + */ + @Test(groups = "Functional") + public void testNewView_dsRefPreserved() + { + AlignViewport av = af.getViewport(); + AlignmentI al = av.getAlignment(); + AlignmentI original_ds = al.getDataset(); + af.newView_actionPerformed(null); + assertNotEquals("New view didn't select the a new panel", av, + af.getViewport()); + org.testng.Assert.assertEquals(original_ds, + af.getViewport().getAlignment().getDataset(), + "Dataset was not preserved in new view"); + } }