Annotation of embedaddon/libxml2/python/tests/validate.py, revision 1.1.1.2
1.1 misho 1: #!/usr/bin/python -u
2: import sys
3: import libxml2
4:
5: # Memory debug specific
6: libxml2.debugMemory(1)
7:
8: ctxt = libxml2.createFileParserCtxt("valid.xml")
9: ctxt.validate(1)
10: ctxt.parseDocument()
11: doc = ctxt.doc()
12: valid = ctxt.isValid()
13:
14: if doc.name != "valid.xml":
1.1.1.2 ! misho 15: print("doc.name failed")
1.1 misho 16: sys.exit(1)
17: root = doc.children
18: if root.name != "doc":
1.1.1.2 ! misho 19: print("root.name failed")
1.1 misho 20: sys.exit(1)
21: if valid != 1:
1.1.1.2 ! misho 22: print("validity chec failed")
1.1 misho 23: sys.exit(1)
24: doc.freeDoc()
25:
26: i = 1000
27: while i > 0:
28: ctxt = libxml2.createFileParserCtxt("valid.xml")
29: ctxt.validate(1)
30: ctxt.parseDocument()
31: doc = ctxt.doc()
32: valid = ctxt.isValid()
33: doc.freeDoc()
34: if valid != 1:
1.1.1.2 ! misho 35: print("validity check failed")
1.1 misho 36: sys.exit(1)
37: i = i - 1
38:
39: #desactivate error messages from the validation
40: def noerr(ctx, str):
41: pass
42:
43: libxml2.registerErrorHandler(noerr, None)
44:
45: ctxt = libxml2.createFileParserCtxt("invalid.xml")
46: ctxt.validate(1)
47: ctxt.parseDocument()
48: doc = ctxt.doc()
49: valid = ctxt.isValid()
50: if doc.name != "invalid.xml":
1.1.1.2 ! misho 51: print("doc.name failed")
1.1 misho 52: sys.exit(1)
53: root = doc.children
54: if root.name != "doc":
1.1.1.2 ! misho 55: print("root.name failed")
1.1 misho 56: sys.exit(1)
57: if valid != 0:
1.1.1.2 ! misho 58: print("validity chec failed")
1.1 misho 59: sys.exit(1)
60: doc.freeDoc()
61:
62: i = 1000
63: while i > 0:
64: ctxt = libxml2.createFileParserCtxt("invalid.xml")
65: ctxt.validate(1)
66: ctxt.parseDocument()
67: doc = ctxt.doc()
68: valid = ctxt.isValid()
69: doc.freeDoc()
70: if valid != 0:
1.1.1.2 ! misho 71: print("validity check failed")
1.1 misho 72: sys.exit(1)
73: i = i - 1
74: del ctxt
75:
76: # Memory debug specific
77: libxml2.cleanupParser()
78: if libxml2.debugMemory(1) == 0:
1.1.1.2 ! misho 79: print("OK")
1.1 misho 80: else:
1.1.1.2 ! misho 81: print("Memory leak %d bytes" % (libxml2.debugMemory(1)))
1.1 misho 82: libxml2.dumpMemory()
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>