| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 | #!/usr/bin/python -u## This test exercise the redirection of error messages with a# functions defined in Python.#import sysimport libxml2# Memory debug specificlibxml2.debugMemory(1)expect='--> I/O --> warning : --> failed to load external entity "missing.xml"\n'err=""def callback(ctx, str):     global err     err = err + "%s %s" % (ctx, str)got_exc = 0libxml2.registerErrorHandler(callback, "-->")try:    doc = libxml2.parseFile("missing.xml")except libxml2.parserError:    got_exc = 1if got_exc == 0:    print "Failed to get a parser exception"    sys.exit(1)if err != expect:    print "error"    print "received %s" %(err)    print "expected %s" %(expect)    sys.exit(1)i = 10000while i > 0:    try:        doc = libxml2.parseFile("missing.xml")    except libxml2.parserError:        got_exc = 1    err = ""    i = i - 1# Memory debug specificlibxml2.cleanupParser()if libxml2.debugMemory(1) == 0:    print "OK"else:    print "Memory leak %d bytes" % (libxml2.debugMemory(1))    libxml2.dumpMemory()
 |