summaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorAndrew Gregory <andrew.gregory.8@gmail.com>2013-08-09 15:15:40 +0200
committerAllan McRae <allan@archlinux.org>2013-08-21 03:13:46 +0200
commitd8c2ab0e6f52d9a790b608c254761ab4888bd547 (patch)
tree8757702b8b428337c06056f8e3e24efc6d7664c4 /test
parent15b667ef36c1720e12160f2ca983f9783ddaf3e4 (diff)
downloadpacman-d8c2ab0e6f52d9a790b608c254761ab4888bd547.tar.gz
pacman-d8c2ab0e6f52d9a790b608c254761ab4888bd547.tar.xz
conflict.c: fix directory ownership check
* append "/" to directories before searching package file lists * use lstat over stat so symlinks aren't resolved * fix the inverted check for stat's return value Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
Diffstat (limited to 'test')
-rw-r--r--test/pacman/tests/fileconflict031.py16
-rw-r--r--test/pacman/tests/fileconflict032.py17
2 files changed, 33 insertions, 0 deletions
diff --git a/test/pacman/tests/fileconflict031.py b/test/pacman/tests/fileconflict031.py
new file mode 100644
index 00000000..7d381412
--- /dev/null
+++ b/test/pacman/tests/fileconflict031.py
@@ -0,0 +1,16 @@
+self.description = "Dir->file transition filesystem conflict resolved by removal (with subdirectory)"
+
+lp1 = pmpkg("foo")
+lp1.files = ["foo/bar/"]
+self.addpkg2db("local", lp1)
+
+sp1 = pmpkg("foo", "2-1")
+sp1.conflicts = ["foo"]
+sp1.files = ["foo"]
+self.addpkg2db("sync", sp1)
+
+self.args = "-S %s" % sp1.name
+
+self.addrule("PACMAN_RETCODE=0")
+self.addrule("PKG_VERSION=foo|2-1")
+self.addrule("FILE_EXIST=foo")
diff --git a/test/pacman/tests/fileconflict032.py b/test/pacman/tests/fileconflict032.py
new file mode 100644
index 00000000..9a677359
--- /dev/null
+++ b/test/pacman/tests/fileconflict032.py
@@ -0,0 +1,17 @@
+self.description = "Dir->file transition filesystem conflict resolved by removal (with symlink)"
+
+self.filesystem = ["baz/quux"]
+
+lp1 = pmpkg("foo")
+lp1.files = ["foo/bar -> ../baz/"]
+self.addpkg2db("local", lp1)
+
+sp1 = pmpkg("foo", "2-1")
+sp1.files = ["foo"]
+self.addpkg2db("sync", sp1)
+
+self.args = "-S %s" % sp1.name
+
+self.addrule("PACMAN_RETCODE=0")
+self.addrule("PKG_VERSION=foo|2-1")
+self.addrule("FILE_EXIST=foo")