diff --git a/OutlawEditor/src/main/resources/testData/blocklytest1.xml b/OutlawEditor/src/main/resources/testData/blocklytest1.xml
new file mode 100644
index 00000000..00b3798b
--- /dev/null
+++ b/OutlawEditor/src/main/resources/testData/blocklytest1.xml
@@ -0,0 +1,53 @@
+
+
+
+
\ No newline at end of file
diff --git a/OutlawEditor/src/main/resources/testData/blocklytest2.xml b/OutlawEditor/src/main/resources/testData/blocklytest2.xml
new file mode 100644
index 00000000..e0416d34
--- /dev/null
+++ b/OutlawEditor/src/main/resources/testData/blocklytest2.xml
@@ -0,0 +1,118 @@
+
+
+
+
\ No newline at end of file
diff --git a/OutlawEditor/src/test/java/org/badvision/outlaweditor/test/TestMythosEditor.java b/OutlawEditor/src/test/java/org/badvision/outlaweditor/test/TestMythosEditor.java
new file mode 100644
index 00000000..f5549a66
--- /dev/null
+++ b/OutlawEditor/src/test/java/org/badvision/outlaweditor/test/TestMythosEditor.java
@@ -0,0 +1,100 @@
+package org.badvision.outlaweditor.test;
+
+import java.io.BufferedInputStream;
+import java.io.IOException;
+import java.io.StringWriter;
+import javax.xml.bind.JAXB;
+import javax.xml.bind.JAXBContext;
+import javax.xml.bind.JAXBElement;
+import javax.xml.bind.Marshaller;
+import javax.xml.namespace.QName;
+import org.badvision.outlaweditor.data.xml.Block;
+import org.badvision.outlaweditor.data.xml.GameData;
+import org.badvision.outlaweditor.data.xml.Map;
+import org.badvision.outlaweditor.data.xml.Map.Scripts;
+import org.badvision.outlaweditor.data.xml.Script;
+import org.junit.Test;
+import static org.junit.Assert.*;
+
+/**
+ * Various sanity checks of the Mythos script editing feature
+ *
+ * @author blurry
+ */
+public class TestMythosEditor {
+
+ static public final String[] testData = {"testData/blocklytest1.xml", "testData/blocklytest2.xml"};
+ static public final String XML_HEADER = "\n";
+
+ @Test
+ public void deserializeTest() throws Exception {
+ for (String path : testData) {
+ System.out.println("testing " + path);
+ Block theBlock = getBlock(path);
+ assertNotNull(theBlock);
+ }
+ }
+
+ @Test
+ public void roundtripTest() throws Exception {
+ JAXBContext context = JAXBContext.newInstance("org.badvision.outlaweditor.data.xml");
+ Marshaller m = context.createMarshaller();
+ m.setProperty(Marshaller.JAXB_FRAGMENT, true);
+ for (String path : testData) {
+ System.out.println("testing " + path);
+ Block theBlock = getBlock(path);
+ StringWriter testWriter = new StringWriter();
+
+ GameData d = new GameData();
+ Map map = new Map();
+ d.getMap().add(map);
+ Script script = new Script();
+ script.setName("name");
+ script.setDescription("description");
+ script.setBlock(theBlock);
+ map.setScripts(new Scripts());
+ map.getScripts().getEnterOrExitOrStepOn().add(new JAXBElement