From af357d6ab00d8ca258dfd7abb689d6fd2eb4090f Mon Sep 17 00:00:00 2001 From: Dan McGee Date: Thu, 14 Jul 2011 15:32:03 -0500 Subject: Allow fileconflict if unowned file moving into backup array The bulk of this commit is adding new tests to ensure the new behavior works without disrupting old behavior. This is a relatively sane maneuver when a package adds a conf file (e.g. '/etc/mercurial/hgrc') that was not previously in the package, but it is placed in the backup array. In essence, we can treat the existing file as having always been a part of the package and do our normal compare/install as pacnew logic checks. Signed-off-by: Dan McGee --- test/pacman/tests/fileconflict003.py | 2 +- test/pacman/tests/upgrade027.py | 22 ++++++++++++++++++++++ test/pacman/tests/upgrade028.py | 22 ++++++++++++++++++++++ test/pacman/tests/upgrade029.py | 24 ++++++++++++++++++++++++ 4 files changed, 69 insertions(+), 1 deletion(-) create mode 100644 test/pacman/tests/upgrade027.py create mode 100644 test/pacman/tests/upgrade028.py create mode 100644 test/pacman/tests/upgrade029.py (limited to 'test') diff --git a/test/pacman/tests/fileconflict003.py b/test/pacman/tests/fileconflict003.py index 89696fcb..749e5a99 100644 --- a/test/pacman/tests/fileconflict003.py +++ b/test/pacman/tests/fileconflict003.py @@ -1,4 +1,4 @@ -self.description = "FS#8156" +self.description = "FS#8156- conflict between directory and incoming symlink" p1 = pmpkg("pkg1") p1.files = ["test/", diff --git a/test/pacman/tests/upgrade027.py b/test/pacman/tests/upgrade027.py new file mode 100644 index 00000000..99087f34 --- /dev/null +++ b/test/pacman/tests/upgrade027.py @@ -0,0 +1,22 @@ +self.description = "Upgrade a package, with a file entering the pkg in 'backup' (changed)" + +self.filesystem = ["etc/dummy.conf"] + +lp = pmpkg("dummy") +lp.files = ["usr/bin/dummy"] +self.addpkg2db("local", lp) + +p = pmpkg("dummy", "1.0-2") +p.files = ["usr/bin/dummy", + "etc/dummy.conf*"] +p.backup = ["etc/dummy.conf"] +self.addpkg(p) + +self.args = "-U %s" % p.filename() + +self.addrule("PACMAN_RETCODE=0") +self.addrule("PKG_VERSION=dummy|1.0-2") +self.addrule("FILE_PACNEW=etc/dummy.conf") +self.addrule("!FILE_PACSAVE=etc/dummy.conf") +self.addrule("!FILE_PACORIG=etc/dummy.conf") +self.addrule("FILE_EXIST=etc/dummy.conf") diff --git a/test/pacman/tests/upgrade028.py b/test/pacman/tests/upgrade028.py new file mode 100644 index 00000000..18a10f57 --- /dev/null +++ b/test/pacman/tests/upgrade028.py @@ -0,0 +1,22 @@ +self.description = "Upgrade a package, with a file entering the pkg in 'backup' (unchanged)" + +self.filesystem = ["etc/dummy.conf"] + +lp = pmpkg("dummy") +lp.files = ["usr/bin/dummy"] +self.addpkg2db("local", lp) + +p = pmpkg("dummy", "1.0-2") +p.files = ["usr/bin/dummy", + "etc/dummy.conf"] +p.backup = ["etc/dummy.conf"] +self.addpkg(p) + +self.args = "-U %s" % p.filename() + +self.addrule("PACMAN_RETCODE=0") +self.addrule("PKG_VERSION=dummy|1.0-2") +self.addrule("!FILE_PACNEW=etc/dummy.conf") +self.addrule("!FILE_PACSAVE=etc/dummy.conf") +self.addrule("!FILE_PACORIG=etc/dummy.conf") +self.addrule("FILE_EXIST=etc/dummy.conf") diff --git a/test/pacman/tests/upgrade029.py b/test/pacman/tests/upgrade029.py new file mode 100644 index 00000000..c308f426 --- /dev/null +++ b/test/pacman/tests/upgrade029.py @@ -0,0 +1,24 @@ +self.description = "Upgrade a package, with an owned file entering the pkg in 'backup'" + +lp = pmpkg("dummy") +lp.files = ["usr/bin/dummy"] +self.addpkg2db("local", lp) + +lp2 = pmpkg("dummy2") +lp2.files = ["etc/dummy.conf"] +self.addpkg2db("local", lp2) + +p = pmpkg("dummy", "1.0-2") +p.files = ["usr/bin/dummy", + "etc/dummy.conf*"] +p.backup = ["etc/dummy.conf"] +self.addpkg(p) + +self.args = "-U %s" % p.filename() + +self.addrule("PACMAN_RETCODE=1") +self.addrule("PKG_VERSION=dummy|1.0-1") +self.addrule("!FILE_PACNEW=etc/dummy.conf") +self.addrule("!FILE_PACSAVE=etc/dummy.conf") +self.addrule("!FILE_PACORIG=etc/dummy.conf") +self.addrule("FILE_EXIST=etc/dummy.conf") -- cgit v1.2.3-24-g4f1b