summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn MacFarlane <jgm@berkeley.edu>2016-06-02 10:50:07 -0700
committerJohn MacFarlane <jgm@berkeley.edu>2016-06-02 10:50:07 -0700
commite59b38ee67eea5d62066df29edf025f53096f46e (patch)
tree0129c77ff087b28172301b12171da75b88830bb9
parent8a53ee9b579fef9a75bd25f881827f28739a1f68 (diff)
roundtrip tests: remove spurious failures.
In the commonmark writer we separate lists, and lists and indented code, using a dummy HTML comment rather than two blank lines (this is more portable). So in evaluating the round-trip tests, we now strip out these comments. We also normalize HTML to avoid issues having to do with line breaks.
-rwxr-xr-xtest/CMakeLists.txt1
-rw-r--r--test/roundtrip_tests.py11
2 files changed, 10 insertions, 2 deletions
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index dd850b6..3b23cff 100755
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -50,7 +50,6 @@ IF (PYTHONINTERP_FOUND)
${PYTHON_EXECUTABLE}
"${CMAKE_CURRENT_SOURCE_DIR}/roundtrip_tests.py"
"--spec" "${CMAKE_CURRENT_SOURCE_DIR}/spec.txt"
- "--no-normalize"
"--library-dir" "${CMAKE_CURRENT_BINARY_DIR}/../src"
)
diff --git a/test/roundtrip_tests.py b/test/roundtrip_tests.py
index 8becb08..a52aa8d 100644
--- a/test/roundtrip_tests.py
+++ b/test/roundtrip_tests.py
@@ -1,3 +1,4 @@
+import re
import sys
from spec_tests import get_tests, do_test
from cmark import CMark
@@ -26,7 +27,15 @@ def converter(md):
cmark = CMark(prog=args.program, library_dir=args.library_dir)
[ec, result, err] = cmark.to_commonmark(md)
if ec == 0:
- return cmark.to_html(result)
+ [ec, html, err] = cmark.to_html(result)
+ if ec == 0:
+ # In the commonmark writer we insert dummy HTML
+ # comments between lists, and between lists and code
+ # blocks. Strip these out, since the spec uses
+ # two blank lines instead:
+ return [ec, re.sub('<!-- end list -->\n', '', html), '']
+ else:
+ return [ec, html, err]
else:
return [ec, result, err]