summaryrefslogtreecommitdiffstats
path: root/fish/test-events.sh
diff options
context:
space:
mode:
authorRichard W.M. Jones <rjones@redhat.com>2012-03-12 15:09:15 +0000
committerRichard W.M. Jones <rjones@redhat.com>2012-03-12 15:09:15 +0000
commit1f603bfd6d7cd17e88f737a496b7e5ee053750c2 (patch)
treed9d93107f51f5b913349af85dff39402c063d3cf /fish/test-events.sh
parent2c8ead5aa0e6b821bf2d21a89e437e9a6c0ed1ca (diff)
downloadlibguestfs-1f603bfd6d7cd17e88f737a496b7e5ee053750c2.tar.gz
libguestfs-1f603bfd6d7cd17e88f737a496b7e5ee053750c2.tar.xz
libguestfs-1f603bfd6d7cd17e88f737a496b7e5ee053750c2.zip
fish: Rename tests and make test paths relative.
When these tests were originally in the old regressions/ directory, they used to refer to guestfish via the path '../fish/guestfish'. Some of the tests were also called 'test-guestfish-*'. Now that the tests have been moved into the fish/ directory, neither of these things make sense. So change the relative path to './guestfish' and rename all 'test-guestfish-*' as 'test-*'.
Diffstat (limited to 'fish/test-events.sh')
-rwxr-xr-xfish/test-events.sh82
1 files changed, 82 insertions, 0 deletions
diff --git a/fish/test-events.sh b/fish/test-events.sh
new file mode 100755
index 00000000..76d3823f
--- /dev/null
+++ b/fish/test-events.sh
@@ -0,0 +1,82 @@
+#!/bin/bash -
+# libguestfs
+# Copyright (C) 2011 Red Hat 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 2 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, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+# Test guestfish events.
+
+set -e
+
+rm -f test.out
+
+./guestfish -a /dev/null <<'EOF' | grep -v get_verbose | grep -v get_trace | grep -v 'library .*0x' > test.out
+trace true
+
+event ev1 * "echo $EVENT $@"
+event ev1 * "echo $EVENT $@"
+event ev2 * "echo $EVENT $@"
+
+list-events
+delete-event ev1
+list-events
+reopen
+list-events
+
+event ev1 close,subprocess_quit "echo $EVENT $@"
+event ev2 close,subprocess_quit "echo $EVENT $@"
+event ev3 launch "echo $EVENT $@"
+
+list-events
+-delete-event ev4
+list-events
+delete-event ev1
+list-events
+delete-event ev3
+list-events
+
+EOF
+
+if [ "$(cat test.out)" != '"ev1" (0): *: echo $EVENT $@
+"ev1" (1): *: echo $EVENT $@
+"ev2" (2): *: echo $EVENT $@
+"ev2" (2): *: echo $EVENT $@
+enter get_autosync
+trace get_autosync
+trace get_autosync = 1
+enter get_path
+trace get_path
+trace get_path = "'$LIBGUESTFS_PATH'"
+enter get_pgroup
+trace get_pgroup
+trace get_pgroup = 0
+trace close
+close
+"ev1" (0): close,subprocess_quit: echo $EVENT $@
+"ev2" (1): close,subprocess_quit: echo $EVENT $@
+"ev3" (2): launch_done: echo $EVENT $@
+"ev1" (0): close,subprocess_quit: echo $EVENT $@
+"ev2" (1): close,subprocess_quit: echo $EVENT $@
+"ev3" (2): launch_done: echo $EVENT $@
+"ev2" (1): close,subprocess_quit: echo $EVENT $@
+"ev3" (2): launch_done: echo $EVENT $@
+"ev2" (1): close,subprocess_quit: echo $EVENT $@
+close' ]; then
+ echo "$0: unexpected output from guestfish events"
+ cat test.out
+ exit 1
+fi
+
+rm test.out