libxml2 2.9.1 clean sources
[tomato.git] / release / src / router / libxml2 / python / tests / tstmem.py
blob6b34cf38acf80404175bb593a5333d9fac2b25bb
1 #!/usr/bin/python -u
2 import libxml2
3 import libxml2mod
4 import sys
6 def error(msg, data):
7 pass
9 # Memory debug specific
10 libxml2.debugMemory(1)
12 dtd="""<!ELEMENT foo EMPTY>"""
13 instance="""<?xml version="1.0"?>
14 <foo></foo>"""
16 dtd = libxml2.parseDTD(None, 'test.dtd')
17 ctxt = libxml2.newValidCtxt()
18 libxml2mod.xmlSetValidErrors(ctxt._o, error, error)
19 doc = libxml2.parseDoc(instance)
20 ret = doc.validateDtd(ctxt, dtd)
21 if ret != 1:
22 print("error doing DTD validation")
23 sys.exit(1)
25 doc.freeDoc()
26 dtd.freeDtd()
27 del dtd
28 del ctxt
30 # Memory debug specific
31 libxml2.cleanupParser()
32 if libxml2.debugMemory(1) == 0:
33 print("OK")
34 else:
35 print("Memory leak %d bytes" % (libxml2.debugMemory(1)))
36 libxml2.dumpMemory()