diff --git a/lib/pure/xmltree.nim b/lib/pure/xmltree.nim index df8db1bb7..6ad90b042 100644 --- a/lib/pure/xmltree.nim +++ b/lib/pure/xmltree.nim @@ -312,7 +312,7 @@ proc add*(father, son: XmlNode) {.inline.} = add(father.s, son) proc insert*(father, son: XmlNode, index: int) {.inline.} = - ## Insert the child `son` to a given position in `father`. + ## Inserts the child `son` to a given position in `father`. ## ## `father` and `son` must be of `xnElement` kind. ## @@ -335,7 +335,7 @@ proc insert*(father, son: XmlNode, index: int) {.inline.} = insert(father.s, son, len(father.s)) proc delete*(n: XmlNode, i: Natural) = - ## Delete the `i`'th child of `n`. + ## Deletes the `i`'th child of `n`. ## ## See also: ## * `add proc <#add,XmlNode,XmlNode>`_ @@ -388,7 +388,7 @@ proc `[]`*(n: var XmlNode, i: int): var XmlNode {.inline.} = result = n.s[i] proc clear*(n: var XmlNode) = - ## Recursively clear all children of an XmlNode. + ## Recursively clears all children of an XmlNode. ## ## .. code-block:: ## var g = newElement("myTag") @@ -788,87 +788,3 @@ macro `<>`*(x: untyped): untyped = ## Nim rules. ## result = xmlConstructor(x) - - -when isMainModule: - var - x: XmlNode - - x = <>a(href = "http://nim-lang.org", newText("Nim rules.")) - assert $x == """Nim rules.""" - - x = <>outer(<>inner()) - assert $x == """ - -""" - - x = <>outer(<>middle(<>inner1(), <>inner2(), <>inner3(), <>inner4())) - assert $x == """ - - - - - - -""" - - x = <>l0(<>l1(<>l2(<>l3(<>l4())))) - assert $x == """ - - - - - - - -""" - - x = <>l0(<>l1p1(), <>l1p2(), <>l1p3()) - assert $x == """ - - - -""" - - x = <>l0(<>l1(<>l2p1(), <>l2p2())) - assert $x == """ - - - - -""" - - 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 == """ - - - - - - - - - - - - - - -""" - - let - innermost = newElement("innermost") - middle = newXmlTree("middle", [innermost]) - innermost.add newText("innermost text") - x = newXmlTree("outer", [middle]) - assert $x == """ - - innermost text - -""" - - x = newElement("myTag") - x.add newText("my text") - x.add newElement("sonTag") - x.add newEntity("my entity") - assert $x == "my text&my entity;" 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 == """Nim rules.""" + + x = <>outer(<>inner()) + assert $x == """ + +""" + + x = <>outer(<>middle(<>inner1(), <>inner2(), <>inner3(), <>inner4())) + assert $x == """ + + + + + + +""" + + x = <>l0(<>l1(<>l2(<>l3(<>l4())))) + assert $x == """ + + + + + + + +""" + + x = <>l0(<>l1p1(), <>l1p2(), <>l1p3()) + assert $x == """ + + + +""" + + x = <>l0(<>l1(<>l2p1(), <>l2p2())) + assert $x == """ + + + + +""" + + 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 == """ + + + + + + + + + + + + + + +""" + + let + innermost = newElement("innermost") + middle = newXmlTree("middle", [innermost]) + innermost.add newText("innermost text") + x = newXmlTree("outer", [middle]) + assert $x == """ + + innermost text + +""" + + x = newElement("myTag") + x.add newText("my text") + x.add newElement("sonTag") + x.add newEntity("my entity") + assert $x == "my text&my entity;"