diff options
Diffstat (limited to 'test/pacman/tests/sync600.py')
-rw-r--r-- | test/pacman/tests/sync600.py | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/test/pacman/tests/sync600.py b/test/pacman/tests/sync600.py new file mode 100644 index 00000000..e0be668c --- /dev/null +++ b/test/pacman/tests/sync600.py @@ -0,0 +1,51 @@ +# coding=utf8 +self.description = "Sync packages with evil filenames" + +self.filesystem = ["usr/bin/endwithspace", + "usr/bin/newendwithspace", + "usr/bin/disappear", + "spaces/name", + "spaces/name2"] + +p1 = pmpkg("spaces") +p1.files = ["usr/bin/endwithspace ", + "usr/bin/disappear ", + " spaces/name", + " spaces/gone"] +self.addpkg2db("local", p1) + +sp1 = pmpkg("spaces", "1.1-1") +sp1.files = ["usr/bin/endwithspace ", + "usr/bin/newendwithspace ", + " spaces/name", + " spaces/name2"] +self.addpkg2db("sync", sp1) + +names = ["Märchen", "ƏƐƕƺ", "предупреждение", "סֶאבױ", + "←↯↻⇈", "アヅヨヾ", "错误"] + +p2 = pmpkg("unicodechars") +# somewhat derived from FS#9906 +p2.files = ["usr/share/%s" % name for name in names] +self.addpkg2db("local", p2) + +sp2 = pmpkg("unicodechars", "2.0-1") +sp2.files = ["usr/man/%s" % name for name in names] +self.addpkg2db("sync", sp2) + +self.args = "-S %s %s" % (sp1.name, sp2.name) + +self.addrule("PACMAN_RETCODE=0") +self.addrule("PKG_VERSION=%s|%s" % (sp1.name, sp1.version)) +self.addrule("PKG_VERSION=%s|%s" % (sp2.name, sp2.version)) + +for f in self.filesystem: + self.addrule("FILE_EXIST=%s" % f) +self.addrule("FILE_EXIST=usr/bin/endwithspace ") +self.addrule("FILE_EXIST= spaces/name") +self.addrule("FILE_EXIST= spaces/name2") +self.addrule("!FILE_EXIST=usr/bin/disappear ") +for f in p2.files: + self.addrule("!FILE_EXIST=%s" % f) +for f in sp2.files: + self.addrule("FILE_EXIST=%s" % f) |