version 1.1, 2012/02/21 23:38:00
|
version 1.1.1.2, 2014/06/15 19:53:34
|
Line 25 doc = libxml2.parseFile("tst.xml")
|
Line 25 doc = libxml2.parseFile("tst.xml")
|
ctxt = doc.xpathNewContext() |
ctxt = doc.xpathNewContext() |
res = ctxt.xpathEval("//*") |
res = ctxt.xpathEval("//*") |
if len(res) != 2: |
if len(res) != 2: |
print "xpath query: wrong node set size" | print("xpath query: wrong node set size") |
sys.exit(1) |
sys.exit(1) |
if res[0].name != "doc" or res[1].name != "foo": |
if res[0].name != "doc" or res[1].name != "foo": |
print "xpath query: wrong node set value" | print("xpath query: wrong node set value") |
sys.exit(1) |
sys.exit(1) |
libxml2.registerXPathFunction(ctxt._o, "foo", None, foo) |
libxml2.registerXPathFunction(ctxt._o, "foo", None, foo) |
libxml2.registerXPathFunction(ctxt._o, "bar", None, bar) |
libxml2.registerXPathFunction(ctxt._o, "bar", None, bar) |
Line 36 i = 10000
|
Line 36 i = 10000
|
while i > 0: |
while i > 0: |
res = ctxt.xpathEval("foo(1)") |
res = ctxt.xpathEval("foo(1)") |
if res != 2: |
if res != 2: |
print "xpath extension failure" | print("xpath extension failure") |
sys.exit(1) |
sys.exit(1) |
i = i - 1 |
i = i - 1 |
i = 10000 |
i = 10000 |
while i > 0: |
while i > 0: |
res = ctxt.xpathEval("bar(1)") |
res = ctxt.xpathEval("bar(1)") |
if res != "3": |
if res != "3": |
print "xpath extension failure got %s expecting '3'" | print("xpath extension failure got %s expecting '3'") |
sys.exit(1) |
sys.exit(1) |
i = i - 1 |
i = i - 1 |
doc.freeDoc() |
doc.freeDoc() |
ctxt.xpathFreeContext() |
ctxt.xpathFreeContext() |
|
|
if called != "foo": |
if called != "foo": |
print "xpath function: failed to access the context" | print("xpath function: failed to access the context") |
print "xpath function: %s" % (called) | print("xpath function: %s" % (called)) |
sys.exit(1) |
sys.exit(1) |
|
|
#memory debug specific |
#memory debug specific |
libxml2.cleanupParser() |
libxml2.cleanupParser() |
if libxml2.debugMemory(1) == 0: |
if libxml2.debugMemory(1) == 0: |
print "OK" | print("OK") |
else: |
else: |
print "Memory leak %d bytes" % (libxml2.debugMemory(1)) | print("Memory leak %d bytes" % (libxml2.debugMemory(1))) |
libxml2.dumpMemory() |
libxml2.dumpMemory() |