summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Kalnischkies <kalnischkies@gmail.com>2011-01-20 16:02:15 +0100
committerDavid Kalnischkies <kalnischkies@gmail.com>2011-01-20 16:02:15 +0100
commitb720d0bd5308b65dc08b930005c2d9b6dfc31bb9 (patch)
treebba2283ce39e204604d02ef2f727f8b850d426bc
parent3cb3fe76e90283a5b3fe7105e4854d4bac13bfeb (diff)
ensure that tempfiles used for comparision are removed
-rw-r--r--test/integration/framework17
1 files changed, 10 insertions, 7 deletions
diff --git a/test/integration/framework b/test/integration/framework
index cb3fca35d..f55cfddfa 100644
--- a/test/integration/framework
+++ b/test/integration/framework
@@ -92,6 +92,11 @@ aptitude() {
fi
}
+addtrap() {
+ CURRENTTRAP="$CURRENTTRAP $1"
+ trap "$CURRENTTRAP" 0 HUP INT QUIT ILL ABRT FPE SEGV PIPE TERM
+}
+
setupenvironment() {
TMPWORKINGDIRECTORY=$(mktemp -d)
local TESTDIR=$(readlink -f $(dirname $0))
@@ -99,8 +104,7 @@ setupenvironment() {
BUILDDIRECTORY="${TESTDIR}/../../build/bin"
test -x "${BUILDDIRECTORY}/apt-get" || msgdie "You need to build tree first"
local OLDWORKINGDIRECTORY=$(pwd)
- CURRENTTRAP="cd /; rm -rf $TMPWORKINGDIRECTORY; cd $OLDWORKINGDIRECTORY"
- trap "$CURRENTTRAP" 0 HUP INT QUIT ILL ABRT FPE SEGV PIPE TERM
+ addtrap "cd /; rm -rf $TMPWORKINGDIRECTORY; cd $OLDWORKINGDIRECTORY;"
cd $TMPWORKINGDIRECTORY
mkdir rootdir aptarchive keys
cd rootdir
@@ -469,8 +473,7 @@ signreleasefiles() {
changetowebserver() {
if which weborf > /dev/null; then
weborf -xb aptarchive/ 2>&1 > /dev/null &
- CURRENTTRAP="kill $!; $CURRENTTRAP"
- trap "$CURRENTTRAP" 0 HUP INT QUIT ILL ABRT FPE SEGV PIPE TERM
+ addtrap "kill $!;"
local APTARCHIVE="file://$(readlink -f ./aptarchive)"
for LIST in $(find rootdir/etc/apt/sources.list.d/ -name 'apt-test-*.list'); do
sed -i $LIST -e "s#$APTARCHIVE#http://localhost:8080/#"
@@ -504,17 +507,18 @@ testfileequal() {
testequal() {
local COMPAREFILE=$(mktemp)
+ addtrap "rm $COMPAREFILE;"
echo "$1" > $COMPAREFILE
shift
msgtest "Test for equality of" "$*"
$* 2>&1 | checkdiff $COMPAREFILE - && msgpass || msgfail
- rm $COMPAREFILE
}
testequalor2() {
local COMPAREFILE1=$(mktemp)
local COMPAREFILE2=$(mktemp)
local COMPAREAGAINST=$(mktemp)
+ addtrap "rm $COMPAREFILE1 $COMPAREFILE2 $COMPAREAGAINST;"
echo "$1" > $COMPAREFILE1
echo "$2" > $COMPAREFILE2
shift 2
@@ -525,7 +529,6 @@ testequalor2() {
( echo "\n${CINFO}Diff against OR 1${CNORMAL}" "$(checkdiff $COMPAREFILE1 $COMPAREAGAINST)" \
"\n${CINFO}Diff against OR 2${CNORMAL}" "$(checkdiff $COMPAREFILE2 $COMPAREAGAINST)" &&
msgfail )
- rm $COMPAREFILE1 $COMPAREFILE2 $COMPAREAGAINST
}
testshowvirtual() {
@@ -542,11 +545,11 @@ N: Can't select versions from package '$1' as it purely virtual"
VIRTUAL="${VIRTUAL}
N: No packages found"
local COMPAREFILE=$(mktemp)
+ addtrap "rm $COMPAREFILE;"
local ARCH=$(dpkg-architecture -qDEB_HOST_ARCH_CPU)
eval `apt-config shell ARCH APT::Architecture`
echo "$VIRTUAL" | sed -e "s/:$ARCH//" -e 's/:all//' > $COMPAREFILE
aptcache show -q=0 $PACKAGE 2>&1 | checkdiff $COMPAREFILE - && msgpass || msgfail
- rm $COMPAREFILE
}
testnopackage() {