From 71b13e8b4c4aad547d870a63e9b2f8784835eb2f Mon Sep 17 00:00:00 2001 From: Neal Norwitz Date: Sun, 23 Feb 2003 22:12:24 +0000 Subject: [PATCH] Fix SF bug #690081, test_posix fails when run in non-interactive mode Don't bother testing os.getlogin() if we aren't running from a tty (terminal) It fails when run without a tty (e.g., when run from cron). --- Lib/test/test_posix.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/Lib/test/test_posix.py b/Lib/test/test_posix.py index 4f0d5be4aa..feb033d54d 100644 --- a/Lib/test/test_posix.py +++ b/Lib/test/test_posix.py @@ -29,10 +29,17 @@ class PosixTester(unittest.TestCase): # test posix functions which take no arguments and have # no side-effects which we need to cleanup (e.g., fork, wait, abort) NO_ARG_FUNCTIONS = [ "ctermid", "getcwd", "getcwdu", "uname", - "times", "getlogin", "getloadavg", "tmpnam", + "times", "getloadavg", "tmpnam", "getegid", "geteuid", "getgid", "getgroups", "getpid", "getpgrp", "getppid", "getuid", ] + # getlogin() only works when run from a tty (terminal) + try: + if os.isatty(sys.stdin.fileno()): + NO_ARG_FUNCTIONS.append("getlogin") + except: + pass + for name in NO_ARG_FUNCTIONS: posix_func = getattr(posix, name, None) if posix_func is not None: -- 2.40.0