From 35a201cc8ef0c3f5b2df88d2e528aabee1048348 Mon Sep 17 00:00:00 2001 From: Wojtek Kosior Date: Fri, 30 Apr 2021 18:47:09 +0200 Subject: Initial/Final commit --- libxml2-2.9.10/python/tests/reader7.py | 101 +++++++++++++++++++++++++++++++++ 1 file changed, 101 insertions(+) create mode 100755 libxml2-2.9.10/python/tests/reader7.py (limited to 'libxml2-2.9.10/python/tests/reader7.py') diff --git a/libxml2-2.9.10/python/tests/reader7.py b/libxml2-2.9.10/python/tests/reader7.py new file mode 100755 index 0000000..c88e370 --- /dev/null +++ b/libxml2-2.9.10/python/tests/reader7.py @@ -0,0 +1,101 @@ +#!/usr/bin/python -u +# +# this tests the entities substitutions with the XmlTextReader interface +# +import sys +import libxml2 + +# Memory debug specific +libxml2.debugMemory(1) + +result = "" +def processNode(reader): + global result + + result = result + "%d %d %s %d\n" % (reader.Depth(), reader.NodeType(), + reader.Name(), reader.IsEmptyElement()) + +# +# Parse a document testing the readerForxxx API +# +docstr=""" + +100 +""" +expect="""0 1 foo 0 +1 14 #text 0 +1 1 label 0 +2 3 #text 0 +1 15 label 0 +1 14 #text 0 +1 1 item 0 +2 3 #text 0 +1 15 item 0 +1 14 #text 0 +0 15 foo 0 +""" +result = "" + +reader = libxml2.readerForDoc(docstr, "test1", None, 0) +ret = reader.Read() +while ret == 1: + processNode(reader) + ret = reader.Read() + +if ret != 0: + print("Error parsing the document test1") + sys.exit(1) + +if result != expect: + print("Unexpected result for test1") + print(result) + sys.exit(1) + +# +# Reuse the reader for another document testing the ReaderNewxxx API +# +docstr=""" + +1000 +""" +expect="""0 1 foo 0 +1 14 #text 0 +1 1 label 0 +2 3 #text 0 +1 15 label 0 +1 14 #text 0 +1 1 item 0 +2 3 #text 0 +1 15 item 0 +1 14 #text 0 +0 15 foo 0 +""" +result = "" + +reader.NewDoc(docstr, "test2", None, 0) +ret = reader.Read() +while ret == 1: + processNode(reader) + ret = reader.Read() + +if ret != 0: + print("Error parsing the document test2") + sys.exit(1) + +if result != expect: + print("Unexpected result for test2") + print(result) + sys.exit(1) + +# +# cleanup +# +del reader + +# Memory debug specific +libxml2.cleanupParser() +if libxml2.debugMemory(1) == 0: + print("OK") +else: + print("Memory leak %d bytes" % (libxml2.debugMemory(1))) + libxml2.dumpMemory() -- cgit v1.2.3