Annotation of embedaddon/libxml2/python/tests/reader4.py, revision 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: def tst_reader(s):
        !            13:     f = StringIO.StringIO(s)
        !            14:     input = libxml2.inputBuffer(f)
        !            15:     reader = input.newTextReader("tst")
        !            16:     res = ""
        !            17:     while reader.Read():
        !            18:         res=res + "%s (%s) [%s] %d\n" % (reader.NodeType(),reader.Name(),
        !            19:                                      reader.Value(), reader.IsEmptyElement())
        !            20:         if reader.NodeType() == 1: # Element
        !            21:             while reader.MoveToNextAttribute():
        !            22:                 res = res + "-- %s (%s) [%s]\n" % (reader.NodeType(),
        !            23:                                                   reader.Name(),reader.Value())
        !            24:     return res
        !            25:     
        !            26: expect="""1 (test) [None] 0
        !            27: 1 (b) [None] 1
        !            28: 1 (c) [None] 1
        !            29: 15 (test) [None] 0
        !            30: """
        !            31: 
        !            32: res = tst_reader("""<test><b/><c/></test>""")
        !            33: 
        !            34: if res != expect:
        !            35:     print "Did not get the expected error message:"
        !            36:     print res
        !            37:     sys.exit(1)
        !            38: 
        !            39: # Memory debug specific
        !            40: libxml2.cleanupParser()
        !            41: if libxml2.debugMemory(1) == 0:
        !            42:     print "OK"
        !            43: else:
        !            44:     print "Memory leak %d bytes" % (libxml2.debugMemory(1))
        !            45:     libxml2.dumpMemory()

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