82 lines · 1.7 KB · Python
RawDownload
#!/usr/bin/python -uimport sysimport libxml2 # Memory debug specificlibxml2.debugMemory(1) ctxt = libxml2.createFileParserCtxt("valid.xml")ctxt.validate(1)ctxt.parseDocument()doc = ctxt.doc()valid = ctxt.isValid() if doc.name != "valid.xml":    print "doc.name failed"    sys.exit(1)root = doc.childrenif root.name != "doc":    print "root.name failed"    sys.exit(1)if valid != 1:    print "validity chec failed"    sys.exit(1)doc.freeDoc() i = 1000while i > 0:    ctxt = libxml2.createFileParserCtxt("valid.xml")    ctxt.validate(1)    ctxt.parseDocument()    doc = ctxt.doc()    valid = ctxt.isValid()    doc.freeDoc()    if valid != 1:        print "validity check failed"        sys.exit(1)    i = i - 1 #desactivate error messages from the validationdef noerr(ctx, str):    pass libxml2.registerErrorHandler(noerr, None) ctxt = libxml2.createFileParserCtxt("invalid.xml")ctxt.validate(1)ctxt.parseDocument()doc = ctxt.doc()valid = ctxt.isValid()if doc.name != "invalid.xml":    print "doc.name failed"    sys.exit(1)root = doc.childrenif root.name != "doc":    print "root.name failed"    sys.exit(1)if valid != 0:    print "validity chec failed"    sys.exit(1)doc.freeDoc() i = 1000while i > 0:    ctxt = libxml2.createFileParserCtxt("invalid.xml")    ctxt.validate(1)    ctxt.parseDocument()    doc = ctxt.doc()    valid = ctxt.isValid()    doc.freeDoc()    if valid != 0:        print "validity check failed"        sys.exit(1)    i = i - 1del ctxt # Memory debug specificlibxml2.cleanupParser()if libxml2.debugMemory(1) == 0:    print "OK"else:    print "Memory leak %d bytes" % (libxml2.debugMemory(1))    libxml2.dumpMemory()

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t