diff options
author | Andrew Gregory <andrew.gregory.8@gmail.com> | 2014-10-06 09:01:40 +0200 |
---|---|---|
committer | Allan McRae <allan@archlinux.org> | 2014-10-13 04:54:29 +0200 |
commit | 42c859e4cc38f91a1236cd93eae9e9f9a1bc1e62 (patch) | |
tree | 23ddd2d78b3fbe4ce2cfed46e7c47f6c9acb91ec /test/pacman/pactest.py | |
parent | 01beca5df717252c7c9aa59bc705dc10a25ebdc8 (diff) | |
download | pacman-42c859e4cc38f91a1236cd93eae9e9f9a1bc1e62.tar.gz pacman-42c859e4cc38f91a1236cd93eae9e9f9a1bc1e62.tar.xz |
pmtest: allow tests to specify test binary
Adds a cmd property to tests (defaults to pacman) which is resolved
using directories specified with --bindir (defaults to PATH). The
ability to manually specify a particular binary is preserved in order to
allow running individual tests with differently named binaries such as
lt-pacman.
Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
Diffstat (limited to 'test/pacman/pactest.py')
-rwxr-xr-x | test/pacman/pactest.py | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/test/pacman/pactest.py b/test/pacman/pactest.py index 58c14f6d..8e87c288 100755 --- a/test/pacman/pactest.py +++ b/test/pacman/pactest.py @@ -31,9 +31,6 @@ import util __author__ = "Aurelien FORET" __version__ = "0.4" -def resolve_binary_path(option, opt_str, value, parser): - setattr(parser.values, option.dest, os.path.abspath(value)) - def create_parser(): usage = "usage: %prog [options] <path/to/testfile.py>..." description = "Runs automated tests on the pacman binary. Tests are " \ @@ -47,10 +44,12 @@ def create_parser(): parser.add_option("-d", "--debug", type = "int", dest = "debug", default = 0, help = "set debug level for pacman") - parser.add_option("-p", "--pacman", action = "callback", - callback = resolve_binary_path, type = "string", - dest = "bin", default = util.which("pacman"), + parser.add_option("-p", "--pacman", type = "string", + dest = "bin", default = None, help = "specify location of the pacman binary") + parser.add_option("--bindir", type = "string", + dest = "bindir", action = "append", + help = "specify location of binaries") parser.add_option("--keep-root", action = "store_true", dest = "keeproot", default = False, help = "don't remove the generated pacman root filesystem") @@ -86,10 +85,6 @@ if __name__ == "__main__": opt_parser = create_parser() (opts, args) = opt_parser.parse_args() - if opts.bin is None or not os.access(opts.bin, os.X_OK): - tap.bail("cannot locate pacman binary") - sys.exit(2) - if args is None or len(args) == 0: tap.bail("no tests defined, nothing to do") sys.exit(2) @@ -102,6 +97,7 @@ if __name__ == "__main__": util.verbose = opts.verbose env.pacman["debug"] = opts.debug env.pacman["bin"] = opts.bin + env.pacman["bindir"] = opts.bindir env.pacman["nolog"] = opts.nolog env.pacman["gdb"] = opts.gdb env.pacman["valgrind"] = opts.valgrind |