]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
tests: Break out duplicate schema verification functionality.
authorCole Robinson <crobinso@redhat.com>
Thu, 8 Oct 2009 22:06:59 +0000 (18:06 -0400)
committerCole Robinson <crobinso@redhat.com>
Fri, 16 Oct 2009 14:21:46 +0000 (10:21 -0400)
All schema tests have identical functionality, so avoid the duplication.

tests/Makefile.am
tests/capabilityschematest
tests/domainschematest
tests/interfaceschematest
tests/networkschematest
tests/nodedevschematest
tests/schematestutils.sh [new file with mode: 0644]
tests/storagepoolschematest
tests/storagevolschematest

index 7882e52211c9401c2b846d68c8bba3fdf91c36e2..b67df5dc325d383d9aa93b91749a47727650b58a 100644 (file)
@@ -52,6 +52,7 @@ EXTRA_DIST =          \
        test-lib.sh     \
        qemuxml2argvdata \
        nodeinfodata     \
+       schematestutils.sh \
        capabilityschematest \
        capabilityschemadata \
        networkschematest \
index a166724b7157f8b49ff85c8f4f97f5d204474668..651e23efe6c2267c221cb867faf61731c6d99d75 100755 (executable)
@@ -1,34 +1,8 @@
 #!/bin/sh
 
-test -z "$srcdir" && srcdir=`pwd`
-test -z "$abs_srcdir" && abs_srcdir=`pwd`
+source ./schematestutils.sh
 
-DOMAINDIRS="capabilityschemadata xencapsdata"
+DIRS="capabilityschemadata xencapsdata"
+SCHEMA="capability.rng"
 
-
-n=0
-f=0
-for dir in $DOMAINDIRS
-do
-  XML=`find $abs_srcdir/$dir -name '*.xml'` || exit 1
-
-  for xml in $XML
-  do
-    n=`expr $n + 1`
-    printf "%4d) %.60s  " $n $(basename $(dirname $xml))"/"$(basename $xml)
-    result=`xmllint --relaxng $srcdir/../docs/schemas/capability.rng --noout $xml 2>&1`
-    ret=$?
-    if test $ret = 0; then
-        echo "OK"
-    else
-        echo "FAILED"
-        echo $result
-        f=`expr $f + 1`
-    fi
-  done
-done
-echo "Validated $n files, $f failed"
-
-ret=0
-test $f != 0 && ret=255
-exit $ret
+check_schema "$DIRS" "$SCHEMA"
index 0a7d4a186020f764569474c0d69514a6f5a3a026..bd58a304372d435e56b9a4c289332353140ceb9d 100755 (executable)
@@ -1,33 +1,8 @@
 #!/bin/sh
 
-test -z "$srcdir" && srcdir=`pwd`
-test -z "$abs_srcdir" && abs_srcdir=`pwd`
+source ./schematestutils.sh
 
-DOMAINDIRS="domainschemadata qemuxml2argvdata sexpr2xmldata xmconfigdata xml2sexprdata"
+DIRS="domainschemadata qemuxml2argvdata sexpr2xmldata xmconfigdata xml2sexprdata"
+SCHEMA="domain.rng"
 
-n=0
-f=0
-for dir in $DOMAINDIRS
-do
-  XML=`find $abs_srcdir/$dir -name '*.xml'` || exit 1
-
-  for xml in $XML
-  do
-    n=`expr $n + 1`
-    printf "%4d) %.60s  " $n $(basename $(dirname $xml))"/"$(basename $xml)
-    result=`xmllint --relaxng $srcdir/../docs/schemas/domain.rng --noout $xml 2>&1`
-    ret=$?
-    if test $ret = 0; then
-        echo "OK"
-    else
-        echo "FAILED"
-        echo $result
-        f=`expr $f + 1`
-    fi
-  done
-done
-echo "Validated $n files, $f failed"
-
-ret=0
-test $f != 0 && ret=255
-exit $ret
+check_schema "$DIRS" "$SCHEMA"
index 3e4105c008efdff0bdb3b2c78b633e0c1817d5eb..e7bd4e51da1918ccdc7849210bd800cd3cce1b62 100755 (executable)
@@ -1,33 +1,8 @@
 #!/bin/sh
 
-test -z "$srcdir" && srcdir=`pwd`
-test -z "$abs_srcdir" && abs_srcdir=`pwd`
+source ./schematestutils.sh
 
 DIRS="interfaceschemadata"
+SCHEMA="interface.rng"
 
-n=0
-f=0
-for dir in $DIRS
-do
-  XML=`find $abs_srcdir/$dir -name '*.xml'` || exit 1
-
-  for xml in $XML
-  do
-    n=`expr $n + 1`
-    printf "%4d) %.60s  " $n $(basename $(dirname $xml))"/"$(basename $xml)
-    result=`xmllint --relaxng $srcdir/../docs/schemas/interface.rng --noout $xml 2>&1`
-    ret=$?
-    if test $ret = 0; then
-        echo "OK"
-    else
-        echo "FAILED"
-        echo $result
-        f=`expr $f + 1`
-    fi
-  done
-done
-echo "Validated $n files, $f failed"
-
-ret=0
-test $f != 0 && ret=255
-exit $ret
+check_schema "$DIRS" "$SCHEMA"
index 3fc0f272af70a260b8540c6083489f5b691b131e..8bb24cd091f2da2c7dbd2521f2daf645da76cddb 100755 (executable)
@@ -1,33 +1,9 @@
 #!/bin/sh
 
-test -z "$srcdir" && srcdir=`pwd`
-test -z "$abs_srcdir" && abs_srcdir=`pwd`
+source ./schematestutils.sh
 
 DIRS="../src/network networkschemadata"
+SCHEMA="network.rng"
 
-n=0
-f=0
-for dir in $DIRS
-do
-  XML=`find $abs_srcdir/$dir -name '*.xml'` || exit 1
+check_schema "$DIRS" "$SCHEMA"
 
-  for xml in $XML
-  do
-    n=`expr $n + 1`
-    printf "%4d) %.60s  " $n $(basename $(dirname $xml))"/"$(basename $xml)
-    result=`xmllint --relaxng $srcdir/../docs/schemas/network.rng --noout $xml 2>&1`
-    ret=$?
-    if test $ret = 0; then
-        echo "OK"
-    else
-        echo "FAILED"
-        echo $result
-        f=`expr $f + 1`
-    fi
-  done
-done
-echo "Validated $n files, $f failed"
-
-ret=0
-test $f != 0 && ret=255
-exit $ret
index 23e9e570716d437d093cd5af1fef6581128c1f42..e676660c58a51a3b8a186156857fa5a53fa4f574 100755 (executable)
@@ -1,33 +1,8 @@
 #!/bin/sh
 
-test -z "$srcdir" && srcdir=`pwd`
-test -z "$abs_srcdir" && abs_srcdir=`pwd`
+source ./schematestutils.sh
 
 DIRS="nodedevschemadata"
+SCHEMA="nodedev.rng"
 
-n=0
-f=0
-for dir in $DIRS
-do
-  XML=`find $abs_srcdir/$dir -name '*.xml'` || exit 1
-
-  for xml in $XML
-  do
-    n=`expr $n + 1`
-    printf "%4d) %.60s  " $n $(basename $(dirname $xml))"/"$(basename $xml)
-    result=`xmllint --relaxng $srcdir/../docs/schemas/nodedev.rng --noout $xml 2>&1`
-    ret=$?
-    if test $ret = 0; then
-        echo "OK"
-    else
-        echo "FAILED"
-        echo $result
-        f=`expr $f + 1`
-    fi
-  done
-done
-echo "Validated $n files, $f failed"
-
-ret=0
-test $f != 0 && ret=255
-exit $ret
+check_schema "$DIRS" "$SCHEMA"
diff --git a/tests/schematestutils.sh b/tests/schematestutils.sh
new file mode 100644 (file)
index 0000000..4b5f266
--- /dev/null
@@ -0,0 +1,39 @@
+#!/bin/sh
+
+test -z "$srcdir" && srcdir=`pwd`
+test -z "$abs_srcdir" && abs_srcdir=`pwd`
+
+function check_schema {
+
+DIRS=$1
+SCHEMA="$srcdir/../docs/schemas/$2"
+
+n=0
+f=0
+for dir in $DIRS
+do
+  XML=`find $abs_srcdir/$dir -name '*.xml'` || exit 1
+
+  for xml in $XML
+  do
+    n=`expr $n + 1`
+    printf "%4d) %.60s  " $n $(basename $(dirname $xml))"/"$(basename $xml)
+    cmd="xmllint --relaxng $SCHEMA --noout $xml"
+    result=`$cmd 2>&1`
+    ret=$?
+    if test $ret = 0; then
+        echo "OK"
+    else
+        echo "FAILED"
+        echo -e "$cmd\n$result"
+        f=`expr $f + 1`
+    fi
+  done
+done
+echo "Validated $n files, $f failed"
+
+ret=0
+test $f != 0 && ret=255
+exit $ret
+
+}
index f6a973dae2436010b89a3a201fc3547e94b8446e..d04b83b96dfdb593361a16bd9eba272e5c9564c9 100755 (executable)
@@ -1,33 +1,8 @@
 #!/bin/sh
 
-test -z "$srcdir" && srcdir=`pwd`
-test -z "$abs_srcdir" && abs_srcdir=`pwd`
+source ./schematestutils.sh
 
 DIRS="storagepoolschemadata"
+SCHEMA="storagepool.rng"
 
-n=0
-f=0
-for dir in $DIRS
-do
-  XML=`find $abs_srcdir/$dir -name '*.xml'` || exit 1
-
-  for xml in $XML
-  do
-    n=`expr $n + 1`
-    printf "%4d) %.60s  " $n $(basename $(dirname $xml))"/"$(basename $xml)
-    result=`xmllint --relaxng $srcdir/../docs/schemas/storagepool.rng --noout $xml 2>&1`
-    ret=$?
-    if test $ret = 0; then
-        echo "OK"
-    else
-        echo "FAILED"
-        echo $result
-        f=`expr $f + 1`
-    fi
-  done
-done
-echo "Validated $n files, $f failed"
-
-ret=0
-test $f != 0 && ret=255
-exit $ret
+check_schema "$DIRS" "$SCHEMA"
index 7865102a13be09e54d6e96fb23816f9359657d5b..8b5559aaec1e41d29b31d41aece5ef25ed6bef22 100755 (executable)
@@ -1,33 +1,9 @@
 #!/bin/sh
 
-test -z "$srcdir" && srcdir=`pwd`
-test -z "$abs_srcdir" && abs_srcdir=`pwd`
+source ./schematestutils.sh
 
 DIRS="storagevolschemadata"
+SCHEMA="storagevol.rng"
 
-n=0
-f=0
-for dir in $DIRS
-do
-  XML=`find $abs_srcdir/$dir -name '*.xml'` || exit 1
+check_schema "$DIRS" "$SCHEMA"
 
-  for xml in $XML
-  do
-    n=`expr $n + 1`
-    printf "%4d) %.60s  " $n $(basename $(dirname $xml))"/"$(basename $xml)
-    result=`xmllint --relaxng $srcdir/../docs/schemas/storagevol.rng --noout $xml 2>&1`
-    ret=$?
-    if test $ret = 0; then
-        echo "OK"
-    else
-        echo "FAILED"
-        echo $result
-        f=`expr $f + 1`
-    fi
-  done
-done
-echo "Validated $n files, $f failed"
-
-ret=0
-test $f != 0 && ret=255
-exit $ret