Files
Nim/tests/xml/ttree_insert.nim
Michael Voronin 7931bdac95 Feature/xmltree additions (#20988)
* [change] add/insert/delete family of xmltree expanded with several variations. Added replace methods family

* [change] Lifted child limitations on insert methods (consulted with @araq)

* [tests] add/insert/replace/delete of xmltree XmlNodes tests added
2022-12-22 08:32:12 +01:00

54 lines
1012 B
Nim

discard """
output: '''
<body>
<div>Some text in body</div>
<div>Some more text in body </div>
</body>
<xml>
<head>
<div>Some text</div>
<div>Some more text </div>
</head>
<body>
<div>Some text in body</div>
<div>Some more text in body </div>
</body>
</xml>
'''
"""
# Test xmltree add/insert/delete/replace operations
import xmlparser
import xmltree
var baseDocHead = """
<xml>
<head>
<div>Some text</div>
<div>Some more text </div>
</head>
</xml>
"""
var baseDocHeadTree = parseXml(baseDocHead)
var baseDocBody = """
<body>
<div>Some text in body</div>
<div>Some more text in body </div>
</body>
"""
var baseDocBodyTree = parseXml(baseDocBody)
proc test_insert() =
var testDoc = baseDocHeadTree
var newBody = newElement("body")
var bodyItems: seq[XmlNode] = @[]
for item in baseDocBodyTree.items():
bodyItems.insert(item, len(bodyItems))
newBody.insert(bodyItems, 1)
echo $newBody
testDoc.insert(newBody, 1)
echo $testDoc
test_insert()