]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - tests/org.simantics.scl.compiler.tests/src/org/simantics/scl/compiler/tests/markdown/MarkdownTests.java
Merged changes from feature/scl to master.
[simantics/platform.git] / tests / org.simantics.scl.compiler.tests / src / org / simantics / scl / compiler / tests / markdown / MarkdownTests.java
similarity index 92%
rename from bundles/org.simantics.scl.compiler/tests/org/simantics/scl/compiler/tests/markdown/RunMarkdownTests.java
rename to tests/org.simantics.scl.compiler.tests/src/org/simantics/scl/compiler/tests/markdown/MarkdownTests.java
index 9971a020b879cd7d2e848967ca5e7bc6ee3bdac8..5c4e120bf5931be43c865d42465826040973cd5b 100644 (file)
-package org.simantics.scl.compiler.tests.markdown;
-
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStreamReader;
-import java.io.StringReader;
-import java.nio.charset.Charset;
-
-import org.simantics.scl.compiler.markdown.internal.MarkdownParser;
-import org.simantics.scl.compiler.markdown.nodes.Node;
-
-public class RunMarkdownTests {
-    
-    public static int FAILED = 0;
-    public static int SUCCEEDED = 1;
-    public static int SKIPPED = 2;
-    
-    public static void main(String[] args) throws IOException {
-        BufferedReader reader = new BufferedReader(
-                new InputStreamReader(
-                        RunMarkdownTests.class.getResourceAsStream("spec.txt"),
-                        Charset.forName("UTF-8")));
-        
-        StringBuilder in = new StringBuilder();
-        StringBuilder out = new StringBuilder();
-        int state = 0;
-        int testId = 0;
-        int passed = 0;
-        int failed = 0;
-        int skipped = 0;
-        while(true) {
-            String line = reader.readLine();
-            if(line == null)
-                break;
-            switch(state) {
-            case 0:
-                if(line.equals("```````````````````````````````` example"))
-                    ++state;
-                break;
-            case 1:
-                if(line.equals("."))
-                    ++state;
-                else {
-                    if(in.length() > 0)
-                        in.append('\n');
-                    in.append(line);
-                }
-                break;
-            case 2:
-                if(line.equals("````````````````````````````````")) {
-                    ++testId;
-                    int status = test(testId, in.toString(), out.toString());
-                    if(status == SUCCEEDED)
-                        ++passed;
-                    else if(status == FAILED)
-                        ++failed;
-                    else
-                        ++skipped;
-                    in = new StringBuilder();
-                    out = new StringBuilder();
-                    state = 0;
-                }
-                else {
-                    if(out.length() > 0)
-                        out.append('\n');
-                    out.append(line);
-                }
-                break;
-            }
-        }
-        
-        System.out.println("Passed: " + passed + "/" + testId);
-        System.out.println("Failed: " + failed + "/" + testId);
-        System.out.println("Skipped: " + skipped + "/" + testId);
-    }
-
-    public static int test(int id, String in, String out) throws IOException {
-        MarkdownParser parser = new MarkdownParser();
-        Node node = parser.parseDocument(new StringReader(in.replace('\u2192', '\t')));
-        
-        String result = node.toHtml().replace('\t', '\u2192');
-                
-        boolean passed = result.equals(out);
-        
-        if(!passed) {
-            System.out.println("Example " + id); // + (passed ? " passed" : " failed"));
-            System.out.println("---- in --------------------------------------------------------------------");
-            System.out.println(in);
-            System.out.println("---- expected --------------------------------------------------------------");
-            System.out.println(out);
-            System.out.println("---- actual ----------------------------------------------------------------");
-            System.out.println(result);
-            System.out.println("----------------------------------------------------------------------------");
-            System.out.println();
-        }
-            
-        return passed ? SUCCEEDED : FAILED;
-    }
-    
-}
+package org.simantics.scl.compiler.tests.markdown;\r
+\r
+import java.io.BufferedReader;\r
+import java.io.IOException;\r
+import java.io.InputStreamReader;\r
+import java.io.StringReader;\r
+import java.nio.charset.Charset;\r
+\r
+import org.junit.Test;\r
+import org.simantics.scl.compiler.markdown.internal.MarkdownParser;\r
+import org.simantics.scl.compiler.markdown.nodes.Node;\r
+\r
+public class MarkdownTests {\r
+    \r
+    public static int FAILED = 0;\r
+    public static int SUCCEEDED = 1;\r
+    public static int SKIPPED = 2;\r
+    \r
+    @Test\r
+    public void markdownTests() throws IOException {\r
+        BufferedReader reader = new BufferedReader(\r
+                new InputStreamReader(\r
+                        MarkdownTests.class.getResourceAsStream("spec.txt"),\r
+                        Charset.forName("UTF-8")));\r
+        \r
+        StringBuilder in = new StringBuilder();\r
+        StringBuilder out = new StringBuilder();\r
+        int state = 0;\r
+        int testId = 0;\r
+        int passed = 0;\r
+        int failed = 0;\r
+        int skipped = 0;\r
+        while(true) {\r
+            String line = reader.readLine();\r
+            if(line == null)\r
+                break;\r
+            switch(state) {\r
+            case 0:\r
+                if(line.equals("```````````````````````````````` example"))\r
+                    ++state;\r
+                break;\r
+            case 1:\r
+                if(line.equals("."))\r
+                    ++state;\r
+                else {\r
+                    if(in.length() > 0)\r
+                        in.append('\n');\r
+                    in.append(line);\r
+                }\r
+                break;\r
+            case 2:\r
+                if(line.equals("````````````````````````````````")) {\r
+                    ++testId;\r
+                    int status = test(testId, in.toString(), out.toString());\r
+                    if(status == SUCCEEDED)\r
+                        ++passed;\r
+                    else if(status == FAILED)\r
+                        ++failed;\r
+                    else\r
+                        ++skipped;\r
+                    in = new StringBuilder();\r
+                    out = new StringBuilder();\r
+                    state = 0;\r
+                }\r
+                else {\r
+                    if(out.length() > 0)\r
+                        out.append('\n');\r
+                    out.append(line);\r
+                }\r
+                break;\r
+            }\r
+        }\r
+        \r
+        System.out.println("Passed: " + passed + "/" + testId);\r
+        System.out.println("Failed: " + failed + "/" + testId);\r
+        System.out.println("Skipped: " + skipped + "/" + testId);\r
+    }\r
+\r
+    public static int test(int id, String in, String out) throws IOException {\r
+        MarkdownParser parser = new MarkdownParser();\r
+        Node node = parser.parseDocument(new StringReader(in.replace('\u2192', '\t')));\r
+        \r
+        String result = node.toHtml().replace('\t', '\u2192');\r
+                \r
+        boolean passed = result.equals(out);\r
+        \r
+        if(!passed) {\r
+            System.out.println("Example " + id); // + (passed ? " passed" : " failed"));\r
+            System.out.println("---- in --------------------------------------------------------------------");\r
+            System.out.println(in);\r
+            System.out.println("---- expected --------------------------------------------------------------");\r
+            System.out.println(out);\r
+            System.out.println("---- actual ----------------------------------------------------------------");\r
+            System.out.println(result);\r
+            System.out.println("----------------------------------------------------------------------------");\r
+            System.out.println();\r
+        }\r
+            \r
+        return passed ? SUCCEEDED : FAILED;\r
+    }\r
+    \r
+}\r