Annotation of embedaddon/libxml2/python/tests/reader4.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: 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>