]> git.saurik.com Git - apt.git/blobdiff - test/integration/test-bug-254770-segfault-if-cache-not-buildable
implement generic config fallback for methods
[apt.git] / test / integration / test-bug-254770-segfault-if-cache-not-buildable
index b9f45b131c49c0fecbf64489e47e8cb34933e972..6f6e1abc08b19033f15294bf2c721caaa4b457e7 100755 (executable)
@@ -1,25 +1,32 @@
 #!/bin/sh
 set -e
 
 #!/bin/sh
 set -e
 
-TESTDIR=$(readlink -f $(dirname $0))
-. $TESTDIR/framework
+TESTDIR="$(readlink -f "$(dirname "$0")")"
+. "$TESTDIR/framework"
+
+msgtest 'Test run as' 'non-root'
+if [ "$(id -u)" = '0' ]; then
+       msgskip 'root has by definition no problems accessing files'
+       exit 0
+else
+       msgpass
+fi
+
 setupenvironment
 configarchitecture "i386"
 setupaptarchive
 
 setupenvironment
 configarchitecture "i386"
 setupaptarchive
 
-CURRENTTRAP="chmod a+x rootdir/var/lib/dpkg; $CURRENTTRAP"
-trap "$CURRENTTRAP" 0 HUP INT QUIT ILL ABRT FPE SEGV PIPE TERM
+addtrap 'prefix' 'chmod a+x rootdir/var/lib/dpkg;'
 chmod a-x rootdir/var/lib/dpkg
 
 testsegfault() {
 chmod a-x rootdir/var/lib/dpkg
 
 testsegfault() {
-       rm -f rootdir/var/cache/apt/*.bin
        msgtest "No segfault in" "$*"
        msgtest "No segfault in" "$*"
-       local TEST="$($* 2>&1 | grep -v 'E:')"
+       local TEST="$("$@" 2>&1 | grep -v 'E:')"
        if [ -z "$TEST" ]; then
                msgpass
        else
                echo
        if [ -z "$TEST" ]; then
                msgpass
        else
                echo
-               echo $TEST
+               echo "$TEST"
                msgfail
        fi
 }
                msgfail
        fi
 }