diff options
author | bptato <nincsnevem662@gmail.com> | 2023-11-18 18:44:47 +0100 |
---|---|---|
committer | bptato <nincsnevem662@gmail.com> | 2023-11-18 18:44:47 +0100 |
commit | 26be68a285e35ca8c9eb886e75b75d2a3ac6af7e (patch) | |
tree | dabc8f426e92f00a33b0f80a7fe312ff61002f6c | |
parent | a911427d9590ae05049b35c8a5fb65a91d77069e (diff) | |
download | chawan-26be68a285e35ca8c9eb886e75b75d2a3ac6af7e.tar.gz |
tests/tree: fix comment handling, log data
-rw-r--r-- | tests/tree.nim | 42 |
1 files changed, 16 insertions, 26 deletions
diff --git a/tests/tree.nim b/tests/tree.nim index 0db9db26..18b138d3 100644 --- a/tests/tree.nim +++ b/tests/tree.nim @@ -114,32 +114,11 @@ proc parseDoctype(s: string): DocumentType = return doctype proc parseComment(s: string): Comment = - type CommentState = enum - NORMAL, SINGLE_DASH, DOUBLE_DASH - var state = NORMAL - let comment = Comment(nodeType: COMMENT_NODE) - var i = "<!--".len - for c in s: - case state - of NORMAL: - if c == '-': - state = SINGLE_DASH - else: - comment.data &= c - of SINGLE_DASH: - if c == '-': - state = DOUBLE_DASH - else: - comment.data &= '-' - comment.data &= c - of DOUBLE_DASH: - if c == '>': - break - else: - comment.data &= '-' - comment.data &= '-' - comment.data &= c - return comment + assert s.startsWith("<!-- ") and s.endsWith(" -->") + return Comment( + nodeType: COMMENT_NODE, + data: s["<!-- ".len .. ^(" -->".len + 1)] + ) proc parseTestDocument(ctx: var TCTestParser): Document = @@ -269,6 +248,17 @@ proc runTests(filename: string) = for test in tests: let ss = newStringStream(test.data) let pdoc = parseHTML(ss) + #[ + var ins = "" + for x in test.document.childList: + ins &= $x & '\n' + var ps = "" + for x in pdoc.childList: + ps &= $x & '\n' + echo "indoc ", $ins + echo "pdoc ", $ps + ]# + echo "data ", test.data checkTest(test.document, pdoc) test "tests1": |