aboutsummaryrefslogtreecommitdiff
path: root/libxml2-2.9.10/python/tests/push.py
diff options
context:
space:
mode:
Diffstat (limited to 'libxml2-2.9.10/python/tests/push.py')
-rwxr-xr-xlibxml2-2.9.10/python/tests/push.py35
1 files changed, 35 insertions, 0 deletions
diff --git a/libxml2-2.9.10/python/tests/push.py b/libxml2-2.9.10/python/tests/push.py
new file mode 100755
index 0000000..0edd61d
--- /dev/null
+++ b/libxml2-2.9.10/python/tests/push.py
@@ -0,0 +1,35 @@
+#!/usr/bin/python -u
+import sys
+import libxml2
+
+# Memory debug specific
+libxml2.debugMemory(1)
+
+ctxt = libxml2.createPushParser(None, "<foo", 4, "test.xml")
+ctxt.parseChunk("/>", 2, 1)
+doc = ctxt.doc()
+ctxt=None
+if doc.name != "test.xml":
+ print("document name error")
+ sys.exit(1)
+root = doc.children
+if root.name != "foo":
+ print("root element name error")
+ sys.exit(1)
+doc.freeDoc()
+i = 10000
+while i > 0:
+ ctxt = libxml2.createPushParser(None, "<foo", 4, "test.xml")
+ ctxt.parseChunk("/>", 2, 1)
+ doc = ctxt.doc()
+ doc.freeDoc()
+ i = i -1
+ctxt=None
+
+# Memory debug specific
+libxml2.cleanupParser()
+if libxml2.debugMemory(1) == 0:
+ print("OK")
+else:
+ print("Memory leak %d bytes" % (libxml2.debugMemory(1)))
+ libxml2.dumpMemory()