diff --git a/Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/main/java/de/hdm_stuttgart/mi/sda1/saxhtml/v1/Memo2HtmlHandler.java b/Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/main/java/de/hdm_stuttgart/mi/sda1/saxhtml/v1/Memo2HtmlHandler.java index 01d69f1f407147b5a72d3c52d534237f790949ec..32b160ac60d77338db9a66cb4b9f2b04d3c1d5e1 100644 --- a/Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/main/java/de/hdm_stuttgart/mi/sda1/saxhtml/v1/Memo2HtmlHandler.java +++ b/Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/main/java/de/hdm_stuttgart/mi/sda1/saxhtml/v1/Memo2HtmlHandler.java @@ -28,7 +28,7 @@ public class Memo2HtmlHandler extends DefaultHandler implements SaxFilter { @Override public void startDocument() throws SAXException { - out.print("<html>" + "\n <head>" + "\n <title>Memo message</title>" + out.print("<html" + "\n <head>" + "\n <title>Memo message</title>" + "\n </head>" + "\n <body>"); } diff --git a/Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/test/java/de/hdm_stuttgart/de/testing/dom/AssertXpathResult.java b/Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/test/java/de/hdm_stuttgart/de/mi/exam/testing/AssertXpathResult.java similarity index 84% rename from Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/test/java/de/hdm_stuttgart/de/testing/dom/AssertXpathResult.java rename to Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/test/java/de/hdm_stuttgart/de/mi/exam/testing/AssertXpathResult.java index d36d86304d99941f17581390cf107027bfb67a19..ff0cb5d631b0645768ef6a18c6ffb96bf4c562c6 100644 --- a/Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/test/java/de/hdm_stuttgart/de/testing/dom/AssertXpathResult.java +++ b/Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/test/java/de/hdm_stuttgart/de/mi/exam/testing/AssertXpathResult.java @@ -1,4 +1,4 @@ -package de.hdm_stuttgart.de.testing.dom; +package de.hdm_stuttgart.de.mi.exam.testing; /** * @author goik diff --git a/Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/test/java/de/hdm_stuttgart/de/testing/dom/DomAssert.java b/Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/test/java/de/hdm_stuttgart/de/mi/exam/testing/DomAssert.java similarity index 98% rename from Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/test/java/de/hdm_stuttgart/de/testing/dom/DomAssert.java rename to Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/test/java/de/hdm_stuttgart/de/mi/exam/testing/DomAssert.java index 6d5cc527160c8ec88b7a9993dc8ba827f2d1686d..f8dc7676e2079a779d989470ef16bf4051b8cc61 100644 --- a/Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/test/java/de/hdm_stuttgart/de/testing/dom/DomAssert.java +++ b/Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/test/java/de/hdm_stuttgart/de/mi/exam/testing/DomAssert.java @@ -1,4 +1,4 @@ -package de.hdm_stuttgart.de.testing.dom; +package de.hdm_stuttgart.de.mi.exam.testing; import java.util.List; diff --git a/Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/test/java/de/hdm_stuttgart/de/testing/dom/SaxFilterTest.java b/Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/test/java/de/hdm_stuttgart/de/mi/exam/testing/SaxFilterTest.java similarity index 71% rename from Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/test/java/de/hdm_stuttgart/de/testing/dom/SaxFilterTest.java rename to Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/test/java/de/hdm_stuttgart/de/mi/exam/testing/SaxFilterTest.java index ffd28114d2269a70d689b2863a41a20097ce2949..0cfc855027466bcf5b3a097b7f953d35d86361d2 100644 --- a/Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/test/java/de/hdm_stuttgart/de/testing/dom/SaxFilterTest.java +++ b/Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/test/java/de/hdm_stuttgart/de/mi/exam/testing/SaxFilterTest.java @@ -1,4 +1,4 @@ -package de.hdm_stuttgart.de.testing.dom; +package de.hdm_stuttgart.de.mi.exam.testing; import java.io.BufferedReader; import java.io.FileNotFoundException; @@ -13,6 +13,8 @@ import javax.xml.parsers.SAXParserFactory; import org.jdom2.Element; import org.jdom2.JDOMException; import org.jdom2.input.SAXBuilder; +import org.junit.Assume; +import org.junit.Before; import org.xml.sax.SAXException; import org.xml.sax.XMLReader; @@ -28,7 +30,7 @@ public abstract class SaxFilterTest { public final String xmlInputFileName, htmlOutputFileName; final SaxFilter saxHandler; - protected static String errorInitString = null; + protected static String initializationErrorString = null; protected static Element htmlRootElement = null; @@ -39,14 +41,14 @@ public abstract class SaxFilterTest { htmlOutputFileName = xmlInputFileName + resultFileExtension; this.saxHandler = saxHandler; - if (null == htmlRootElement) { + if (null == htmlRootElement && null == initializationErrorString) { final PrintStream out; try { out = new PrintStream(htmlOutputFileName); } catch (FileNotFoundException e1) { - errorInitString = "Unable to open file '" + htmlOutputFileName + initializationErrorString = "Unable to open file '" + htmlOutputFileName + "' for writing"; return; } @@ -62,13 +64,13 @@ public abstract class SaxFilterTest { xmlReader.setErrorHandler(new StandardErrorHandler()); } catch (SAXException | ParserConfigurationException e) { - errorInitString = "Unable to create XMLparser instance: " + e.getLocalizedMessage(); + initializationErrorString = "Unable to create XMLparser instance: " + e.getLocalizedMessage(); return; } try { xmlReader.parse(xmlInputFileName); } catch (SAXException | IOException e) { - errorInitString = "Unable parse file '" + xmlInputFileName + initializationErrorString = "Unable parse file '" + xmlInputFileName + "': " + e.getLocalizedMessage(); return; } @@ -80,18 +82,21 @@ public abstract class SaxFilterTest { final SAXBuilder parser = new SAXBuilder(); try { - htmlRootElement = parser.build(htmlOutputFileName) - .getRootElement(); + htmlRootElement = parser.build(htmlOutputFileName).getRootElement(); } catch (JDOMException | IOException e1) { System.err.print( - errorInitString = "Unable to parse file '" + htmlOutputFileName - + "':\n" + e1.getLocalizedMessage() + - "\n, exiting"); - - System.exit(1); + initializationErrorString = "Unable to parse file '" + htmlOutputFileName + + "':\n" + e1.getLocalizedMessage()); + return; } } } + + @Before + public void checkWellFormedness() { + Assume.assumeTrue("Previous error:" + initializationErrorString, null == initializationErrorString); + //Assert.assertNull("Unable to parse generated file:" + errorInitString, errorInitString); + } private void printResultToStdout() { try { @@ -103,7 +108,7 @@ public abstract class SaxFilterTest { } saxResult.close(); } catch (IOException e) { - errorInitString = "Unable to open expected result output file '" + initializationErrorString = "Unable to open expected result output file '" + htmlOutputFileName + "' :" + e.getLocalizedMessage(); } } diff --git a/Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/test/java/de/hdm_stuttgart/de/sda1/saxhtml/v1/test/TestSimpleSaxTransform.java b/Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/test/java/de/hdm_stuttgart/de/sda1/saxhtml/v1/test/TestSimpleSaxTransform.java index 8cfbef0fd97c3cafb6bab6b97c2ee36be37c63ea..ffb786ecc1367d5f420dca53f967fe9593e5fd5e 100644 --- a/Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/test/java/de/hdm_stuttgart/de/sda1/saxhtml/v1/test/TestSimpleSaxTransform.java +++ b/Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/test/java/de/hdm_stuttgart/de/sda1/saxhtml/v1/test/TestSimpleSaxTransform.java @@ -1,10 +1,9 @@ package de.hdm_stuttgart.de.sda1.saxhtml.v1.test; -import org.junit.Assert; import org.junit.Test; -import de.hdm_stuttgart.de.testing.dom.SaxFilterTest; -import de.hdm_stuttgart.de.testing.dom.DomAssert; +import de.hdm_stuttgart.de.mi.exam.testing.DomAssert; +import de.hdm_stuttgart.de.mi.exam.testing.SaxFilterTest; import de.hdm_stuttgart.mi.sda1.saxhtml.v1.Memo2HtmlHandler; /** @@ -17,10 +16,6 @@ public class TestSimpleSaxTransform extends SaxFilterTest { super("src/main/resources/memo.xml", new Memo2HtmlHandler(), ".1.html"); } - @Test public void checkWellFormedness() { - Assert.assertNull("Unable to parse generated file:" + errorInitString, errorInitString); - } - @Test public void testSenderInHeader() { DomAssert.assertSingleNodeContent("<title>Memo message</title> must be the only child of <head>", htmlRootElement, "head/*", "title", "Memo message"); } diff --git a/Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/test/java/de/hdm_stuttgart/de/sda1/saxhtml/v2/test/TestComplexSaxTransform.java b/Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/test/java/de/hdm_stuttgart/de/sda1/saxhtml/v2/test/TestComplexSaxTransform.java index 8fb9da9e6f8c78588e210214a3b5576173782934..418be404e24b4e9cf407122e2012deedf9578761 100644 --- a/Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/test/java/de/hdm_stuttgart/de/sda1/saxhtml/v2/test/TestComplexSaxTransform.java +++ b/Sda1/Etest/SaxMemo2Html/SaxMemo2Hhtml_solution/src/test/java/de/hdm_stuttgart/de/sda1/saxhtml/v2/test/TestComplexSaxTransform.java @@ -2,8 +2,8 @@ package de.hdm_stuttgart.de.sda1.saxhtml.v2.test; import org.junit.Test; -import de.hdm_stuttgart.de.testing.dom.SaxFilterTest; -import de.hdm_stuttgart.de.testing.dom.DomAssert; +import de.hdm_stuttgart.de.mi.exam.testing.DomAssert; +import de.hdm_stuttgart.de.mi.exam.testing.SaxFilterTest; import de.hdm_stuttgart.mi.sda1.saxhtml.v2.Memo2HtmlHandler; /**