Bump to 1.14.1
[platform/upstream/augeas.git] / tests / test-events-saved.sh
index ebddf10..c26f812 100755 (executable)
@@ -1,13 +1,15 @@
-#! /bin/bash
+#!/bin/sh
 
 # Check that saving preserves mode and ownership; for this test to make
 # much sense (if any) the user running it should have at least one
 # supplementary group
 
 run_augtool() {
+savemode=$1
 augtool --nostdinc -r $root -I $abs_top_srcdir/lenses <<EOF
+set /augeas/save $savemode
 set /files/etc/hosts/1/ipaddr 127.0.1.1
-set /files/etc/grub.conf/default 3
+set /files/boot/grub/menu.lst/default 3
 set /files/etc/inittab/1/action fake
 rm /files/etc/puppet/puppet.conf
 set /files/etc/yum.repos.d/fedora.repo/fedora/enabled 0
@@ -18,24 +20,28 @@ EOF
 
 root=$abs_top_builddir/build/test-events-saved
 
-rm -rf $root
-mkdir -p $root
-cp -pr $abs_top_srcdir/tests/root/* $root
-chmod -R u+w $root
+for savemode in overwrite backup newfile noop; do
+    rm -rf $root
+    mkdir -p $root
+    cp -pr $abs_top_srcdir/tests/root/* $root
+    chmod -R u+w $root
 
-saved=$(run_augtool | grep ^/augeas/events/saved | cut -d ' ' -f 3 | sort | tr '\n' ' ')
-exp="/files/etc/grub.conf /files/etc/hosts /files/etc/inittab /files/etc/puppet/puppet.conf /files/etc/yum.repos.d/fedora.repo "
+    saved=$(run_augtool $savemode | grep ^/augeas/events/saved | cut -d ' ' -f 3 | sort | tr '\n' ' ')
+    exp="/files/boot/grub/menu.lst /files/etc/hosts /files/etc/inittab /files/etc/puppet/puppet.conf /files/etc/yum.repos.d/fedora.repo "
 
-if [ -f "$root/etc/puppet/puppet.conf" ]
-then
-  echo "File /etc/puppet/puppet.conf should have been deleted"
-  exit 1
-fi
+    if [ -f "$root/etc/puppet/puppet.conf" -a "$savemode" != "noop" ]
+    then
+        echo "Save mode: $savemode"
+        echo "File /etc/puppet/puppet.conf should have been deleted"
+        exit 1
+    fi
 
-if [ "$saved" != "$exp" ]
-then
-    echo "Unexpected entries in /augeas/events/saved:"
-    echo "Expected: \"$exp\""
-    echo "Actual:   \"$saved\""
-    exit 1
-fi
+    if [ "$saved" != "$exp" ]
+    then
+        echo "Unexpected entries in /augeas/events/saved:"
+        echo "Expected: \"$exp\""
+        echo "Actual:   \"$saved\""
+        echo "Save mode: $savemode"
+        exit 1
+    fi
+done