summaryrefslogtreecommitdiff
path: root/python/tests
diff options
context:
space:
mode:
authorDaniel Veillard <veillard@src.gnome.org>2005-03-02 10:47:41 +0000
committerDaniel Veillard <veillard@src.gnome.org>2005-03-02 10:47:41 +0000
commit25c90c589b256f0925f081198c1525134a491e31 (patch)
treea6e95f1c6d6a55c45437403e1d32c5938dcd40ee /python/tests
parentba70cc0de7be1ef743d1a569945cd6316de5a493 (diff)
downloadlibxml2-25c90c589b256f0925f081198c1525134a491e31.tar.gz
try to fix a problem with valgrind. applied memory leak fix from Brent
* Makefile.am doc/examples/Makefile.am python/tests/Makefile.am xstc/Makefile.am: try to fix a problem with valgrind. * python/generator.py python/libxml.c python/tests/Makefile.am python/tests/tstmem.py: applied memory leak fix from Brent Hendricks c.f. bug #165349 Daniel
Diffstat (limited to 'python/tests')
-rw-r--r--python/tests/Makefile.am3
-rwxr-xr-xpython/tests/tstmem.py36
2 files changed, 38 insertions, 1 deletions
diff --git a/python/tests/Makefile.am b/python/tests/Makefile.am
index 3fb29590..23f031e8 100644
--- a/python/tests/Makefile.am
+++ b/python/tests/Makefile.am
@@ -37,7 +37,8 @@ PYTESTS= \
sync.py \
tstLastError.py \
indexes.py \
- dtdvalid.py
+ dtdvalid.py \
+ tstmem.py
XMLS= \
tst.xml \
diff --git a/python/tests/tstmem.py b/python/tests/tstmem.py
new file mode 100755
index 00000000..553096d3
--- /dev/null
+++ b/python/tests/tstmem.py
@@ -0,0 +1,36 @@
+#!/usr/bin/python -u
+import libxml2
+import libxml2mod
+import sys
+
+def error(msg, data):
+ pass
+
+# Memory debug specific
+libxml2.debugMemory(1)
+
+dtd="""<!ELEMENT foo EMPTY>"""
+instance="""<?xml version="1.0"?>
+<foo></foo>"""
+
+dtd = libxml2.parseDTD(None, 'test.dtd')
+ctxt = libxml2.newValidCtxt()
+libxml2mod.xmlSetValidErrors(ctxt._o, error, error)
+doc = libxml2.parseDoc(instance)
+ret = doc.validateDtd(ctxt, dtd)
+if ret != 1:
+ print "error doing DTD validation"
+ sys.exit(1)
+
+doc.freeDoc()
+dtd.freeDtd()
+del dtd
+del ctxt
+
+# Memory debug specific
+libxml2.cleanupParser()
+if libxml2.debugMemory(1) == 0:
+ print "OK"
+else:
+ print "Memory leak %d bytes" % (libxml2.debugMemory(1))
+ libxml2.dumpMemory()