If a directory has been replaced by a symlink, -Qk currently stats the symlink target rather than the symlink itself and doesn't check that the actual file type matches the package file list. This will make it difficult to discover errors once 4.2 is released and replacing directories with symlinks is no longer supported. Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com> --- test/pacman/tests/TESTS | 1 + test/pacman/tests/querycheck_fast_file_type.py | 14 ++++++++++++++ 2 files changed, 15 insertions(+) create mode 100644 test/pacman/tests/querycheck_fast_file_type.py diff --git a/test/pacman/tests/TESTS b/test/pacman/tests/TESTS index dc47294..1b5a81f 100644 --- a/test/pacman/tests/TESTS +++ b/test/pacman/tests/TESTS @@ -90,6 +90,7 @@ TESTS += test/pacman/tests/query011.py TESTS += test/pacman/tests/query012.py TESTS += test/pacman/tests/querycheck001.py TESTS += test/pacman/tests/querycheck002.py +TESTS += test/pacman/tests/querycheck_fast_file_type.py TESTS += test/pacman/tests/reason001.py TESTS += test/pacman/tests/remove001.py TESTS += test/pacman/tests/remove002.py diff --git a/test/pacman/tests/querycheck_fast_file_type.py b/test/pacman/tests/querycheck_fast_file_type.py new file mode 100644 index 0000000..a19fcee --- /dev/null +++ b/test/pacman/tests/querycheck_fast_file_type.py @@ -0,0 +1,14 @@ +self.description = "check file type without mtree" + +self.filesystem = [ "bar/", "foo -> bar/" ] + +pkg = pmpkg("dummy") +pkg.files = [ "foo/" ] +self.addpkg2db("local",pkg) + +self.args = "-Qk" + +self.addrule("PACMAN_RETCODE=1") +self.addrule("PACMAN_OUTPUT=warning.*(File type mismatch)") + +self.expectfailure = True -- 2.0.0