From 5312e683fcc800e528c01d652aab30e862e44a0b Mon Sep 17 00:00:00 2001 From: Andrew Gregory Date: Wed, 11 Nov 2015 19:20:01 -0500 Subject: hooks: pass matched targets to hooks Signed-off-by: Andrew Gregory Signed-off-by: Allan McRae --- test/pacman/tests/TESTS | 1 + test/pacman/tests/hook-target-list.py | 40 +++++++++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 test/pacman/tests/hook-target-list.py (limited to 'test/pacman/tests') diff --git a/test/pacman/tests/TESTS b/test/pacman/tests/TESTS index afd2e698..e330896b 100644 --- a/test/pacman/tests/TESTS +++ b/test/pacman/tests/TESTS @@ -59,6 +59,7 @@ TESTS += test/pacman/tests/hook-invalid-trigger.py TESTS += test/pacman/tests/hook-pkg-install-trigger-match.py TESTS += test/pacman/tests/hook-pkg-remove-trigger-match.py TESTS += test/pacman/tests/hook-pkg-upgrade-trigger-match.py +TESTS += test/pacman/tests/hook-target-list.py TESTS += test/pacman/tests/hook-upgrade-trigger-no-match.py TESTS += test/pacman/tests/ignore001.py TESTS += test/pacman/tests/ignore002.py diff --git a/test/pacman/tests/hook-target-list.py b/test/pacman/tests/hook-target-list.py new file mode 100644 index 00000000..6dd6c4d8 --- /dev/null +++ b/test/pacman/tests/hook-target-list.py @@ -0,0 +1,40 @@ +self.description = "Hook with NeedsTargets" + +self.add_hook("hook", + """ + [Trigger] + Type = Package + Operation = Install + Target = foo + + # duplicate trigger to check that duplicate targets are removed + [Trigger] + Type = Package + Operation = Install + Target = foo + + [Trigger] + Type = File + Operation = Install + # matches files in 'file/' but not 'file/' itself + Target = file/?* + + [Action] + When = PreTransaction + Exec = bin/sh -c 'while read -r tgt; do printf "%s\\n" "$tgt"; done > var/log/hook-output' + NeedsTargets + """); + +p1 = pmpkg("foo") +p1.files = ["file/foo"] +self.addpkg(p1) + +p2 = pmpkg("bar") +p2.files = ["file/bar"] +self.addpkg(p2) + +self.args = "-U %s %s" % (p1.filename(), p2.filename()) + +self.addrule("PACMAN_RETCODE=0") +self.addrule("PKG_EXIST=foo") +self.addrule("FILE_CONTENTS=var/log/hook-output|file/bar\nfile/foo\nfoo\n") -- cgit v1.2.3-70-g09d2