Add script to test XPath expressions (requires xmlstarlet)
authorkim <kim@3cdefd35-fc62-479d-8e8d-bae585ffb9ca>
Wed, 25 Jan 2012 23:10:56 +0000 (23:10 +0000)
committerkim <kim@3cdefd35-fc62-479d-8e8d-bae585ffb9ca>
Wed, 25 Jan 2012 23:10:56 +0000 (23:10 +0000)
git-svn-id: svn+ssh://idea.nguyen.vg/svn/sxsi/trunk/xpathcomp@1191 3cdefd35-fc62-479d-8e8d-bae585ffb9ca

tests/scripts/xpath.sh [new file with mode: 0755]

diff --git a/tests/scripts/xpath.sh b/tests/scripts/xpath.sh
new file mode 100755 (executable)
index 0000000..abb32b4
--- /dev/null
@@ -0,0 +1,46 @@
+#!/bin/bash
+
+COUNT=0
+QUERY=""
+FILE=""
+
+function usage {
+    echo "usage: $0 [options] <query> <file>"
+    echo "options:"
+    echo "-c     counting mode"
+    echo "-h     display this help"
+}
+
+for i in "$@"
+do
+    if [ "$i" == "-h" ]
+    then
+       usage
+       exit 0
+    elif [ "$i" == "-c" ]
+    then
+       COUNT=1
+       continue
+    elif [ "$QUERY" == "" ]
+    then
+       QUERY="$i"
+       continue
+    else
+       FILE="$i"
+    fi
+done
+
+if [ -z "$FILE" ]
+then
+    echo "error: missing filename"
+    usage
+    exit 1
+fi
+
+
+if [ "$COUNT" == "0" ]
+then
+    xmlstarlet sel -t -m "$QUERY" -c . -n "$FILE"
+else
+    xmlstarlet sel -t -v "count($QUERY)" "$FILE"
+fi