]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
tests: new test: virsh-synopsis
authorJim Meyering <meyering@redhat.com>
Mon, 24 Nov 2008 07:13:29 +0000 (07:13 +0000)
committerJim Meyering <meyering@redhat.com>
Mon, 24 Nov 2008 07:13:29 +0000 (07:13 +0000)
* tests/virsh-synopsis: new file
* tests/Makefile.am (test_scripts): Add virsh-synopsis.
* src/virsh.c: Correct help SYNOPSIS for each of seven commands.

When I first ran this script, "make check" failed like this:
  ...
  invalid help SYNOPSIS for net-create:
      create a network from an XML <file>
  invalid help SYNOPSIS for net-define:
      define a network from an XML <file>
  invalid help SYNOPSIS for net-start:
      start <network>
  invalid help SYNOPSIS for pool-create:
      create a pool from an XML <file>
  invalid help SYNOPSIS for pool-define:
      define a pool from an XML <file>
  invalid help SYNOPSIS for pool-start:
      start <pool>
  invalid help SYNOPSIS for vol-create:
      create <file>
  FAIL: virsh-synopsis

ChangeLog
src/virsh.c
tests/Makefile.am
tests/virsh-synopsis [new file with mode: 0755]

index 2828d4309eabc101011c41621f0c8d1489435bc4..ec882b8581fc7afc819a8593b48d0687faeee717 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
 Mon Nov 24 08:10:49 +0100 2008 Jim Meyering <meyering@redhat.com>
 
+       tests: new test: virsh-synopsis
+       * tests/virsh-synopsis: new file
+       * tests/Makefile.am (test_scripts): Add virsh-synopsis.
+       * src/virsh.c: Correct help SYNOPSIS for each of seven commands.
+
        tests: virsh-all: new script
        * tests/virsh-all: New script.
        * tests/Makefile.am (test_scripts): Add virsh-all.
index c6b02ee4a1bc48beb0a3f28bf6eecb770f9a68a2..5a8d5e3b77beaa45fc0d6ec39b099b53fcfaeeef 100644 (file)
@@ -2365,7 +2365,7 @@ cmdNetworkAutostart(vshControl *ctl, const vshCmd *cmd)
  * "net-create" command
  */
 static const vshCmdInfo info_network_create[] = {
-    {"syntax", "create a network from an XML <file>"},
+    {"syntax", "net-create <file>"},
     {"help", gettext_noop("create a network from an XML file")},
     {"desc", gettext_noop("Create a network.")},
     {NULL, NULL}
@@ -2413,7 +2413,7 @@ cmdNetworkCreate(vshControl *ctl, const vshCmd *cmd)
  * "net-define" command
  */
 static const vshCmdInfo info_network_define[] = {
-    {"syntax", "define a network from an XML <file>"},
+    {"syntax", "net-define <file>"},
     {"help", gettext_noop("define (but don't start) a network from an XML file")},
     {"desc", gettext_noop("Define a network.")},
     {NULL, NULL}
@@ -2697,7 +2697,7 @@ cmdNetworkName(vshControl *ctl, const vshCmd *cmd)
  * "net-start" command
  */
 static const vshCmdInfo info_network_start[] = {
-    {"syntax", "start <network>"},
+    {"syntax", "net-start <network>"},
     {"help", gettext_noop("start a (previously defined) inactive network")},
     {"desc", gettext_noop("Start a network.")},
     {NULL, NULL}
@@ -2862,14 +2862,15 @@ cmdPoolAutostart(vshControl *ctl, const vshCmd *cmd)
  * "pool-create" command
  */
 static const vshCmdInfo info_pool_create[] = {
-    {"syntax", "create a pool from an XML <file>"},
+    {"syntax", "pool-create <file>"},
     {"help", gettext_noop("create a pool from an XML file")},
     {"desc", gettext_noop("Create a pool.")},
     {NULL, NULL}
 };
 
 static const vshCmdOptDef opts_pool_create[] = {
-    {"file", VSH_OT_DATA, VSH_OFLAG_REQ, gettext_noop("file containing an XML pool description")},
+    {"file", VSH_OT_DATA, VSH_OFLAG_REQ,
+     gettext_noop("file containing an XML pool description")},
     {NULL, 0, 0, NULL}
 };
 
@@ -3000,7 +3001,7 @@ cmdPoolCreateAs(vshControl *ctl, const vshCmd *cmd)
  * "pool-define" command
  */
 static const vshCmdInfo info_pool_define[] = {
-    {"syntax", "define a pool from an XML <file>"},
+    {"syntax", "pool-define <file>"},
     {"help", gettext_noop("define (but don't start) a pool from an XML file")},
     {"desc", gettext_noop("Define a pool.")},
     {NULL, NULL}
@@ -3727,7 +3728,7 @@ cmdPoolName(vshControl *ctl, const vshCmd *cmd)
  * "pool-start" command
  */
 static const vshCmdInfo info_pool_start[] = {
-    {"syntax", "start <pool>"},
+    {"syntax", "pool-start <pool>"},
     {"help", gettext_noop("start a (previously defined) inactive pool")},
     {"desc", gettext_noop("Start a pool.")},
     {NULL, NULL}
@@ -3965,7 +3966,7 @@ cmdPoolUuid(vshControl *ctl, const vshCmd *cmd)
  * "vol-create" command
  */
 static const vshCmdInfo info_vol_create[] = {
-    {"syntax", "create <file>"},
+    {"syntax", "vol-create <file>"},
     {"help", gettext_noop("create a vol from an XML file")},
     {"desc", gettext_noop("Create a vol.")},
     {NULL, NULL}
index f20dde22ca636e4b3369f8a41c7169594bef7436..1efa0c83f6c9f48bf6922cb888d875e51aeb6720 100644 (file)
@@ -63,6 +63,7 @@ test_scripts += \
        undefine \
        vcpupin
        virsh-all
+       virsh-synopsis
 endif
 
 EXTRA_DIST += $(test_scripts)
diff --git a/tests/virsh-synopsis b/tests/virsh-synopsis
new file mode 100755 (executable)
index 0000000..24038dd
--- /dev/null
@@ -0,0 +1,44 @@
+#!/bin/sh
+# ensure that each command's help "SYNOPSIS" line starts with the command name
+
+# Copyright (C) 2008 Free Software Foundation, Inc.
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+if test "$VERBOSE" = yes; then
+  set -x
+  virsh --version
+fi
+
+test -z "$srcdir" && srcdir=$(pwd)
+. "$srcdir/test-lib.sh"
+
+fail=0
+
+test_url=test:///default
+
+virsh -c $test_url help > cmds || framework_failure
+cmds=$(sed -n 's/^    \([^ ][^ ]*\) .*/\1/p' cmds) || framework_failure
+test -n "$cmds" || framework_failure
+
+for i in $cmds; do
+    virsh -c $test_url help $i > help || fail=1
+    grep -A1 '^  SYNOPSIS$' help > synopsis \
+      || { echo 1>&2 missing or invalid help SYNOPSIS for $i; fail=1; }
+    sed -n 2p synopsis > s2 || framework_failure
+    grep -E "^    $i( |$)" s2 > /dev/null \
+      || { echo 1>&2 "invalid help SYNOPSIS for $i:"; cat s2 1>&2; fail=1; }
+done
+
+(exit $fail); exit $fail