Merge remote-tracking branch 'origin/merge/JAL-845_JAL-1640' into
[jalview.git] / test / jalview / io / Jalview2xmlTests.java
index b2fab71..6892e5f 100644 (file)
@@ -23,6 +23,7 @@ package jalview.io;
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 import jalview.api.AlignmentViewPanel;
+import jalview.api.ViewStyleI;
 import jalview.datamodel.AlignmentAnnotation;
 import jalview.datamodel.SequenceGroup;
 import jalview.datamodel.SequenceI;
@@ -34,6 +35,7 @@ import jalview.schemes.ColourSchemeI;
 import java.io.File;
 
 import org.junit.AfterClass;
+import org.junit.Assert;
 import org.junit.BeforeClass;
 import org.junit.Test;
 
@@ -306,4 +308,37 @@ public class Jalview2xmlTests
     }
     
   }
+
+  @Test
+  public void testCopyViewSettings() throws Exception
+  {
+    AlignFrame af = new jalview.io.FileLoader().LoadFileWaitTillLoaded(
+            "examples/exampleFile_2_7.jar", FormatAdapter.FILE);
+    Assert.assertTrue("Didn't read in the example file correctly.", af != null);
+    AlignmentViewPanel sps = null, groups = null;
+    for (AlignmentViewPanel ap : af.alignPanel.alignFrame.getAlignPanels())
+    {
+      if ("Spinach Feredoxin Structure".equals(ap.getViewName()))
+      {
+        sps = ap;
+      }
+      if (ap.getViewName().contains("MAFFT"))
+      {
+        groups = ap;
+      }
+    }
+    assertTrue("Couldn't find the structure view", sps != null);
+    assertTrue("Couldn't find the MAFFT view", groups != null);
+
+    ViewStyleI structureStyle = sps.getAlignViewport().getViewStyle();
+    ViewStyleI groupStyle = groups.getAlignViewport().getViewStyle();
+    Assert.assertFalse(structureStyle.sameStyle(groupStyle));
+
+    groups.getAlignViewport().setViewStyle(structureStyle);
+    Assert.assertFalse(groupStyle.sameStyle(groups.getAlignViewport()
+            .getViewStyle()));
+    Assert.assertTrue(structureStyle.sameStyle(groups.getAlignViewport()
+            .getViewStyle()));
+
+  }
 }