xref: /aosp_15_r20/external/libxml2/python/tests/xpathns.py (revision 7c5688314b92172186c154356a6374bf7684c3ca)
1*7c568831SAndroid Build Coastguard Worker#!/usr/bin/env python3
2*7c568831SAndroid Build Coastguard Worker#
3*7c568831SAndroid Build Coastguard Workerimport setup_test
4*7c568831SAndroid Build Coastguard Workerimport libxml2
5*7c568831SAndroid Build Coastguard Worker
6*7c568831SAndroid Build Coastguard Workerexpect=' xmlns:a="urn:whatevar"'
7*7c568831SAndroid Build Coastguard Worker
8*7c568831SAndroid Build Coastguard Worker# Memory debug specific
9*7c568831SAndroid Build Coastguard Workerlibxml2.debugMemory(1)
10*7c568831SAndroid Build Coastguard Worker
11*7c568831SAndroid Build Coastguard Workerd = libxml2.parseDoc("<a:a xmlns:a='urn:whatevar'/>")
12*7c568831SAndroid Build Coastguard Workerres=""
13*7c568831SAndroid Build Coastguard Workerfor n in d.xpathEval("//namespace::*"):
14*7c568831SAndroid Build Coastguard Worker    res = res + n.serialize()
15*7c568831SAndroid Build Coastguard Workerdel n
16*7c568831SAndroid Build Coastguard Workerd.freeDoc()
17*7c568831SAndroid Build Coastguard Worker
18*7c568831SAndroid Build Coastguard Workerif res != expect:
19*7c568831SAndroid Build Coastguard Worker    print("test5 failed: unexpected output")
20*7c568831SAndroid Build Coastguard Worker    print(res)
21*7c568831SAndroid Build Coastguard Workerdel res
22*7c568831SAndroid Build Coastguard Workerdel d
23*7c568831SAndroid Build Coastguard Worker# Memory debug specific
24*7c568831SAndroid Build Coastguard Workerlibxml2.cleanupParser()
25*7c568831SAndroid Build Coastguard Worker
26*7c568831SAndroid Build Coastguard Workerif libxml2.debugMemory(1) == 0:
27*7c568831SAndroid Build Coastguard Worker    print("OK")
28*7c568831SAndroid Build Coastguard Workerelse:
29*7c568831SAndroid Build Coastguard Worker    print("Memory leak %d bytes" % (libxml2.debugMemory(1)))
30