summaryrefslogtreecommitdiffstats
path: root/edit/test-virt-edit.sh
diff options
context:
space:
mode:
Diffstat (limited to 'edit/test-virt-edit.sh')
-rwxr-xr-xedit/test-virt-edit.sh42
1 files changed, 42 insertions, 0 deletions
diff --git a/edit/test-virt-edit.sh b/edit/test-virt-edit.sh
new file mode 100755
index 00000000..d43851b5
--- /dev/null
+++ b/edit/test-virt-edit.sh
@@ -0,0 +1,42 @@
+#!/bin/bash -
+
+export LANG=C
+set -e
+
+# Make a copy of the Fedora image so we can write to it then
+# discard it.
+cp ../images/fedora.img test.img
+
+# Edit interactively. We have to simulate this by setting $EDITOR.
+# The command will be: echo newline >> /tmp/file
+export EDITOR='echo newline >>'
+./virt-edit -a test.img /etc/test3
+if [ "$(../cat/virt-cat -a test.img /etc/test3)" != "a
+b
+c
+d
+e
+f
+newline" ]; then
+ echo "$0: error: mismatch in interactive editing of file /etc/test3"
+ exit 1
+fi
+unset EDITOR
+
+# Edit non-interactively, only if we have 'perl' binary.
+if perl --version >/dev/null 2>&1; then
+ ./virt-edit -a test.img /etc/test3 -e 's/^[a-f]/$lineno/'
+ if [ "$(../cat/virt-cat -a test.img /etc/test3)" != "1
+2
+3
+4
+5
+6
+newline" ]; then
+ echo "$0: error: mismatch in non-interactive editing of file /etc/test3"
+ exit 1
+ fi
+fi
+
+# Discard test image.
+rm test.img