summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xpactest/pmtest.py7
-rw-r--r--pactest/tests/scriptlet001.py17
-rw-r--r--pactest/tests/scriptlet002.py17
3 files changed, 19 insertions, 22 deletions
diff --git a/pactest/pmtest.py b/pactest/pmtest.py
index 457028db..be36914b 100755
--- a/pactest/pmtest.py
+++ b/pactest/pmtest.py
@@ -189,6 +189,13 @@ class pmtest:
cmd = [""]
if os.geteuid() != 0:
cmd.append("fakeroot")
+
+ fakechroot = which("fakechroot")
+ if not fakechroot:
+ print "WARNING: fakechroot not found, scriptlet tests WILL fail!!!"
+ else:
+ cmd.append("fakechroot")
+
if pacman["gdb"]:
cmd.append("libtool gdb --args")
if pacman["valgrind"]:
diff --git a/pactest/tests/scriptlet001.py b/pactest/tests/scriptlet001.py
index 3609d167..54a46aae 100644
--- a/pactest/tests/scriptlet001.py
+++ b/pactest/tests/scriptlet001.py
@@ -1,21 +1,16 @@
-# 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 = "Scriptlet test (pre/post install)"
-lpsh = pmpkg("sh")
-lpsh.files = ['bin/sh']
-self.addpkg2db("local", lpsh)
-
p1 = pmpkg("dummy")
p1.files = ['etc/dummy.conf']
-p1.install['pre_install'] = "ls /etc";
-p1.install['post_install'] = "ls /etc";
+pre = "OUTPUT FROM PRE_INSTALL"
+post = "OUTPUT FROM POST_INSTALL"
+p1.install['pre_install'] = "echo " + pre
+p1.install['post_install'] = "echo " + post
self.addpkg(p1)
# --debug is necessary to check PACMAN_OUTPUT
self.args = "--debug -U %s" % p1.filename()
self.addrule("PACMAN_RETCODE=0")
-self.addrule("FILE_EXIST=bin/sh")
-self.addrule("PACMAN_OUTPUT=pre_install")
-self.addrule("PACMAN_OUTPUT=post_install")
+self.addrule("PACMAN_OUTPUT=" + pre)
+self.addrule("PACMAN_OUTPUT=" + post)
diff --git a/pactest/tests/scriptlet002.py b/pactest/tests/scriptlet002.py
index 38ed5fd0..dd792b82 100644
--- a/pactest/tests/scriptlet002.py
+++ b/pactest/tests/scriptlet002.py
@@ -1,21 +1,16 @@
-# 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 = "Scriptlet test (pre/post remove)"
-lpsh = pmpkg("sh")
-lpsh.files = ['bin/sh']
-self.addpkg2db("local", lpsh)
-
p1 = pmpkg("dummy")
p1.files = ['etc/dummy.conf']
-p1.install['pre_remove'] = "ls /etc";
-p1.install['post_remove'] = "ls /etc";
+pre = "OUTPUT FROM PRE_REMOVE";
+post = "OUTPUT FROM POST_REMOVE";
+p1.install['pre_remove'] = "echo " + pre
+p1.install['post_remove'] = "echo " + post
self.addpkg2db("local", p1)
# --debug is necessary to check PACMAN_OUTPUT
self.args = "--debug -R %s" % p1.name
self.addrule("PACMAN_RETCODE=0")
-self.addrule("FILE_EXIST=bin/sh")
-self.addrule("PACMAN_OUTPUT=pre_remove")
-self.addrule("PACMAN_OUTPUT=post_remove")
+self.addrule("PACMAN_OUTPUT=" + pre)
+self.addrule("PACMAN_OUTPUT=" + post)