diff options
author | flywind <43030857+xflywind@users.noreply.github.com> | 2020-11-22 04:26:51 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-11-21 12:26:51 -0800 |
commit | 3040f0550534848f61aa87d42e195e3fb5a70262 (patch) | |
tree | 3334f969ae445a7a0c9e6e84e24687491e982925 /tests/stdlib/txmltree.nim | |
parent | dd57d46f2f3a35878f48a1cd19bc85541f85c463 (diff) | |
download | Nim-3040f0550534848f61aa87d42e195e3fb5a70262.tar.gz |
xmltree minor improvement (#16085)
Diffstat (limited to 'tests/stdlib/txmltree.nim')
-rw-r--r-- | tests/stdlib/txmltree.nim | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/tests/stdlib/txmltree.nim b/tests/stdlib/txmltree.nim new file mode 100644 index 000000000..034435dd7 --- /dev/null +++ b/tests/stdlib/txmltree.nim @@ -0,0 +1,85 @@ +import xmltree + + +block: + var + x: XmlNode + + x = <>a(href = "http://nim-lang.org", newText("Nim rules.")) + assert $x == """<a href="http://nim-lang.org">Nim rules.</a>""" + + x = <>outer(<>inner()) + assert $x == """<outer> + <inner /> +</outer>""" + + x = <>outer(<>middle(<>inner1(), <>inner2(), <>inner3(), <>inner4())) + assert $x == """<outer> + <middle> + <inner1 /> + <inner2 /> + <inner3 /> + <inner4 /> + </middle> +</outer>""" + + x = <>l0(<>l1(<>l2(<>l3(<>l4())))) + assert $x == """<l0> + <l1> + <l2> + <l3> + <l4 /> + </l3> + </l2> + </l1> +</l0>""" + + x = <>l0(<>l1p1(), <>l1p2(), <>l1p3()) + assert $x == """<l0> + <l1p1 /> + <l1p2 /> + <l1p3 /> +</l0>""" + + x = <>l0(<>l1(<>l2p1(), <>l2p2())) + assert $x == """<l0> + <l1> + <l2p1 /> + <l2p2 /> + </l1> +</l0>""" + + x = <>l0(<>l1(<>l2_1(), <>l2_2(<>l3_1(), <>l3_2(), <>l3_3(<>l4_1(), <>l4_2(), <>l4_3())), <>l2_3(), <>l2_4())) + assert $x == """<l0> + <l1> + <l2_1 /> + <l2_2> + <l3_1 /> + <l3_2 /> + <l3_3> + <l4_1 /> + <l4_2 /> + <l4_3 /> + </l3_3> + </l2_2> + <l2_3 /> + <l2_4 /> + </l1> +</l0>""" + + let + innermost = newElement("innermost") + middle = newXmlTree("middle", [innermost]) + innermost.add newText("innermost text") + x = newXmlTree("outer", [middle]) + assert $x == """<outer> + <middle> + <innermost>innermost text</innermost> + </middle> +</outer>""" + + x = newElement("myTag") + x.add newText("my text") + x.add newElement("sonTag") + x.add newEntity("my entity") + assert $x == "<myTag>my text<sonTag />&my entity;</myTag>" |