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>