Check before using platform specific attributes.

Summary: `os.uname` in TestUniversal and `os.geteuid` in TestTerminal.

Reviewers: clayborg, zturner

Subscribers: lldb-commits

Differential Revision: http://reviews.llvm.org/D10202

llvm-svn: 239135
This commit is contained in:
Chaoren Lin 2015-06-05 06:28:43 +00:00
parent 2d45554b82
commit 52cf8ecc23
2 changed files with 6 additions and 3 deletions

View File

@ -20,7 +20,8 @@ class LaunchInTerminalTestCase(TestBase):
# 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")
@unittest2.skipUnless(not hasattr(os, 'geteuid') or os.geteuid() != 0,
"test cannot be run as root")
# Do we need to disable this test if the testsuite is being run on a remote system?
# This env var is only defined when the shell is running in a local mac terminal window

View File

@ -18,7 +18,8 @@ class UniversalTestCase(TestBase):
@python_api_test
@skipUnlessDarwin
@unittest2.skipUnless(os.uname()[4] in ['i386', 'x86_64'], "requires i386 or x86_64")
@unittest2.skipUnless(hasattr(os, "uname") and os.uname()[4] in ['i386', 'x86_64'],
"requires i386 or x86_64")
def test_sbdebugger_create_target_with_file_and_target_triple(self):
"""Test the SBDebugger.CreateTargetWithFileAndTargetTriple() API."""
# Invoke the default build rule.
@ -36,7 +37,8 @@ class UniversalTestCase(TestBase):
self.assertTrue(process, PROCESS_IS_VALID)
@skipUnlessDarwin
@unittest2.skipUnless(os.uname()[4] in ['i386', 'x86_64'], "requires i386 or x86_64")
@unittest2.skipUnless(hasattr(os, "uname") and os.uname()[4] in ['i386', 'x86_64'],
"requires i386 or x86_64")
def test_process_launch_for_universal(self):
"""Test process launch of a universal binary."""
from lldbutil import print_registers