summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan McGee <dan@archlinux.org>2011-08-29 13:30:03 -0500
committerDan McGee <dan@archlinux.org>2011-09-01 14:36:44 -0500
commitc51b9ca0ad897428a008701e35f8f11fa0ad9046 (patch)
tree883fdcfe6352ebcb6c8c437e972201e4c27dbd5c
parentad051f7328cb8fed19070651aac314d64de1b815 (diff)
downloadpacman-c51b9ca0ad897428a008701e35f8f11fa0ad9046.tar.xz
pactest: remove PACMAN_OUTPUT from ldconfig tests
This removes the last usages of this rule that aren't explicitly looking at real output from pacman. Notably, these tests depended on one particular debug logger not ever being changed, which is too fragile, not to mention doesn't work at all with --nolog. Signed-off-by: Dan McGee <dan@archlinux.org>
-rwxr-xr-xtest/pacman/ldconfig.stub4
-rw-r--r--test/pacman/pmtest.py7
-rw-r--r--test/pacman/tests/ldconfig001.py9
-rw-r--r--test/pacman/tests/ldconfig002.py7
-rw-r--r--test/pacman/tests/ldconfig003.py7
-rw-r--r--test/pacman/util.py1
6 files changed, 17 insertions, 18 deletions
diff --git a/test/pacman/ldconfig.stub b/test/pacman/ldconfig.stub
new file mode 100755
index 00000000..d261a04a
--- /dev/null
+++ b/test/pacman/ldconfig.stub
@@ -0,0 +1,4 @@
+#!/bin/sh
+# A simple stub to copy into the chroot to fake ldconfig.
+# Simply appends a line to /etc/ld.so.cache if called.
+echo "ldconfig called" >> /etc/ld.so.cache
diff --git a/test/pacman/pmtest.py b/test/pacman/pmtest.py
index 3acf5d81..4e1ecd0b 100644
--- a/test/pacman/pmtest.py
+++ b/test/pacman/pmtest.py
@@ -119,13 +119,18 @@ class pmtest(object):
logdir = os.path.join(self.root, os.path.dirname(util.LOGFILE))
etcdir = os.path.join(self.root, os.path.dirname(util.PACCONF))
bindir = os.path.join(self.root, "bin")
- sys_dirs = [dbdir, cachedir, syncdir, tmpdir, logdir, etcdir, bindir]
+ sbindir = os.path.join(self.root, "sbin")
+ sys_dirs = [dbdir, cachedir, syncdir, tmpdir, logdir, etcdir, bindir, sbindir]
for sys_dir in sys_dirs:
if not os.path.isdir(sys_dir):
vprint("\t%s" % sys_dir[len(self.root)+1:])
os.makedirs(sys_dir, 0755)
# Only the dynamically linked binary is needed for fakechroot
shutil.copy("/bin/sh", bindir)
+ shutil.copy(os.path.join(util.SELFPATH, "ldconfig.stub"),
+ os.path.join(sbindir, "ldconfig"))
+ ld_so_conf = open(os.path.join(etcdir, "ld.so.conf"), "w")
+ ld_so_conf.close()
# Configuration file
vprint(" Creating configuration file")
diff --git a/test/pacman/tests/ldconfig001.py b/test/pacman/tests/ldconfig001.py
index aa029ba5..a264326d 100644
--- a/test/pacman/tests/ldconfig001.py
+++ b/test/pacman/tests/ldconfig001.py
@@ -1,12 +1,9 @@
-# quick note here - chroot() is expected to fail. We're not checking the
-# validity of the scripts, only that they fire (or try to)
-self.description = "Make sure ldconfig runs on an add operation"
+self.description = "Make sure ldconfig runs on an upgrade operation"
p = pmpkg("dummy")
self.addpkg(p)
-# --debug is necessary to check PACMAN_OUTPUT
-self.args = "--debug -U %s" % p.filename()
+self.args = "-U %s" % p.filename()
self.addrule("PACMAN_RETCODE=0")
-self.addrule("PACMAN_OUTPUT=running ldconfig")
+self.addrule("FILE_EXIST=/etc/ld.so.cache")
diff --git a/test/pacman/tests/ldconfig002.py b/test/pacman/tests/ldconfig002.py
index c028ce38..2628dc7a 100644
--- a/test/pacman/tests/ldconfig002.py
+++ b/test/pacman/tests/ldconfig002.py
@@ -1,5 +1,3 @@
-# quick note here - chroot() is expected to fail. We're not checking the
-# validity of the scripts, only that they fire (or try to)
self.description = "Make sure ldconfig runs on an upgrade operation"
lp = pmpkg("dummy")
@@ -8,9 +6,8 @@ self.addpkg2db("local", lp)
p = pmpkg("dummy", "1.0-2")
self.addpkg(p)
-# --debug is necessary to check PACMAN_OUTPUT
-self.args = "--debug -U %s" % p.filename()
+self.args = "-U %s" % p.filename()
self.addrule("PACMAN_RETCODE=0")
self.addrule("PKG_VERSION=dummy|1.0-2")
-self.addrule("PACMAN_OUTPUT=running ldconfig")
+self.addrule("FILE_EXIST=/etc/ld.so.cache")
diff --git a/test/pacman/tests/ldconfig003.py b/test/pacman/tests/ldconfig003.py
index 69618c68..8d1babb7 100644
--- a/test/pacman/tests/ldconfig003.py
+++ b/test/pacman/tests/ldconfig003.py
@@ -1,5 +1,3 @@
-# quick note here - chroot() is expected to fail. We're not checking the
-# validity of the scripts, only that they fire (or try to)
self.description = "Make sure ldconfig runs on a sync operation"
sp = pmpkg("dummy")
@@ -7,8 +5,5 @@ self.addpkg2db("sync", sp)
self.args = "-S %s" % sp.name
-# --debug is necessary to check PACMAN_OUTPUT
-self.args = "--debug -S %s" % sp.name
-
self.addrule("PACMAN_RETCODE=0")
-self.addrule("PACMAN_OUTPUT=running ldconfig")
+self.addrule("FILE_EXIST=/etc/ld.so.cache")
diff --git a/test/pacman/util.py b/test/pacman/util.py
index cde44c6e..81dcc906 100644
--- a/test/pacman/util.py
+++ b/test/pacman/util.py
@@ -20,6 +20,7 @@ import os
import re
import hashlib
+SELFPATH = os.path.abspath(os.path.dirname(__file__))
# ALPM
PM_ROOT = "/"