From 1f1b76ab8937c2cb0273cc5d8a7ee806240e1879 Mon Sep 17 00:00:00 2001 From: Greg Hudson Date: Sat, 28 Sep 2013 14:56:22 -0400 Subject: Add "which" function to k5test Add a utility function in k5test.py to look for a command in the executable path, and remove it from t_kdb.py. --- src/util/k5test.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'src/util/k5test.py') diff --git a/src/util/k5test.py b/src/util/k5test.py index 017aa0c7fb..aead832177 100644 --- a/src/util/k5test.py +++ b/src/util/k5test.py @@ -133,6 +133,9 @@ Scripts may use the following functions and variables: added newline) in testlog, and write it to stdout if running verbosely. +* which(progname): Return the location of progname in the executable + path, or None if it is not found. + * password(name): Return a weakly random password based on name. The password will be consistent across calls with the same name. @@ -371,6 +374,16 @@ def output(msg, force_verbose=False): sys.stdout.write(msg) +# Return the location of progname in the executable path, or None if +# it is not found. +def which(progname): + for dir in os.environ["PATH"].split(os.pathsep): + path = os.path.join(dir, progname) + if os.access(path, os.X_OK): + return path + return None + + def password(name): """Choose a weakly random password from name, consistent across calls.""" return name + str(os.getpid()) -- cgit