summaryrefslogtreecommitdiff
path: root/python/tests/xpathleak.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/tests/xpathleak.py')
-rw-r--r--python/tests/xpathleak.py14
1 files changed, 13 insertions, 1 deletions
diff --git a/python/tests/xpathleak.py b/python/tests/xpathleak.py
index dcc144c..39f49e3 100644
--- a/python/tests/xpathleak.py
+++ b/python/tests/xpathleak.py
@@ -15,6 +15,14 @@ expect="""--> Invalid expression
--> xmlXPathEval: evaluation failed
--> Invalid expression
--> xmlXPathEval: evaluation failed
+--> Invalid expression
+--> xmlXPathEval: evaluation failed
+--> Invalid expression
+--> xmlXPathEval: evaluation failed
+--> Invalid expression
+--> xmlXPathEval: evaluation failed
+--> Invalid expression
+--> xmlXPathEval: evaluation failed
"""
err=""
def callback(ctx, str):
@@ -27,7 +35,11 @@ libxml2.registerErrorHandler(callback, "-->")
doc = libxml2.parseDoc("<fish/>")
ctxt = doc.xpathNewContext()
ctxt.setContextNode(doc)
-for expr in (":false()","bad:()","bad(:)",":bad(:)","bad:(:)","bad:bad(:)"):
+badexprs = (
+ ":false()", "bad:()", "bad(:)", ":bad(:)", "bad:(:)", "bad:bad(:)",
+ "a:/b", "/c:/d", "//e:/f", "g://h"
+ )
+for expr in badexprs:
try:
ctxt.xpathEval(expr)
except libxml2.xpathError, e: