]> xenbits.xensource.com Git - libvirt.git/commitdiff
tests: files named '.*-invalid.xml' should fail validation
authorJán Tomko <jtomko@redhat.com>
Thu, 9 May 2013 11:43:32 +0000 (13:43 +0200)
committerJán Tomko <jtomko@redhat.com>
Thu, 9 May 2013 12:25:11 +0000 (14:25 +0200)
Currently, using an invalid XML in tests fails, because
the schema test expects all of them to be valid.

Treat files with -invalid.xml suffix as invalid and expect
them to fail validation.

tests/schematestutils.sh

index 43612216076434ccab5a98e35ec78c8aa507b4f1..e739b991dd1359a375965ce71af5eff643ca73cb 100644 (file)
@@ -20,6 +20,18 @@ do
     result=`$cmd 2>&1`
     ret=$?
 
+    grep -- '-invalid.xml$' <<< "$xml" 2>&1 >/dev/null
+    invalid=$?
+
+    # per xmllint man page, the return codes for validation error
+    # are 3 and 4
+    if test $invalid -eq 0; then
+        if test $ret -eq 4 || test $ret -eq 3; then
+            ret=0
+        elif test $ret -eq 0; then
+            ret=3
+        fi
+    fi
     test_result $n $(basename $(dirname $xml))"/"$(basename $xml) $ret
     if test "$verbose" = "1" && test $ret != 0 ; then
         printf '%s\n' "$cmd" "$result"