Annotation of embedaddon/libxml2/python/tests/readererr.py, revision 1.1.1.1

1.1       misho       1: #!/usr/bin/python -u
                      2: #
                      3: # this tests the basic APIs of the XmlTextReader interface
                      4: #
                      5: import libxml2
                      6: import StringIO
                      7: import sys
                      8: 
                      9: # Memory debug specific
                     10: libxml2.debugMemory(1)
                     11: 
                     12: expect="""--> (3) test1:1:xmlns: URI foo is not absolute
                     13: --> (4) test1:1:Opening and ending tag mismatch: c line 1 and a
                     14: """
                     15: err=""
                     16: def myErrorHandler(arg,msg,severity,locator):
                     17:     global err
                     18:     err = err + "%s (%d) %s:%d:%s" % (arg,severity,locator.BaseURI(),locator.LineNumber(),msg)
                     19: 
                     20: f = StringIO.StringIO("""<a xmlns="foo"><b b1="b1"/><c>content of c</a>""")
                     21: input = libxml2.inputBuffer(f)
                     22: reader = input.newTextReader("test1")
                     23: reader.SetErrorHandler(myErrorHandler,"-->")
                     24: while reader.Read() == 1:
                     25:     pass
                     26: 
                     27: if err != expect:
                     28:     print "error"
                     29:     print "received %s" %(err)
                     30:     print "expected %s" %(expect)
                     31:     sys.exit(1)
                     32: 
                     33: reader.SetErrorHandler(None,None)
                     34: if reader.GetErrorHandler() != (None,None):
                     35:     print "GetErrorHandler failed"
                     36:     sys.exit(1)
                     37: 
                     38: #
                     39: # cleanup for memory allocation counting
                     40: #
                     41: del f
                     42: del input
                     43: del reader
                     44: 
                     45: # Memory debug specific
                     46: libxml2.cleanupParser()
                     47: if libxml2.debugMemory(1) == 0:
                     48:     print "OK"
                     49: else:
                     50:     print "Memory leak %d bytes" % (libxml2.debugMemory(1))
                     51:     libxml2.dumpMemory()

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>