Author: jmolenda Date: Mon Jan 12 18:54:59 2015 New Revision: 225748 URL: http://llvm.org/viewvc/llvm-project?rev=225748&view=rev Log: Don't run functionalities/tty under sudo / as root. The terminal window will be opened under the ownership of the real userid and it won't be able to open the socket talking back to lldb -- the testsuite will hang here.
The same thing probably should be done for lldb when run on a remote system over ssh. I added a line for that but commented it out for now because I haven't tested it. Modified: lldb/trunk/test/functionalities/tty/TestTerminal.py Modified: lldb/trunk/test/functionalities/tty/TestTerminal.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/test/functionalities/tty/TestTerminal.py?rev=225748&r1=225747&r2=225748&view=diff ============================================================================== --- lldb/trunk/test/functionalities/tty/TestTerminal.py (original) +++ lldb/trunk/test/functionalities/tty/TestTerminal.py Mon Jan 12 18:54:59 2015 @@ -16,6 +16,16 @@ class LaunchInTerminalTestCase(TestBase) # a program in a separate terminal window. It would be great if other platforms # added support for this. @unittest2.skipUnless(sys.platform.startswith("darwin"), "requires Darwin") + + + # If the test is being run under sudo, the spawned terminal won't retain that elevated + # privilege so it can't open the socket to talk back to the test case + @unittest2.skipUnless(os.geteuid() != 0, "test cannot be run as root") + + # Do we need to disable this test if the testsuite is being run on a rmeote system? + # This env var is only defined when the shell is running in a local mac terminal window + # @unittest2.skipUnless(os.environ.has_key('TERM_PROGRAM'), "test must be run on local system") + def test_launch_in_terminal (self): exe = "/bin/ls" target = self.dbg.CreateTarget(exe) _______________________________________________ lldb-commits mailing list lldb-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits