diff options
author | Robert Flack <flackr@gmail.com> | 2015-03-26 19:34:26 +0000 |
---|---|---|
committer | Robert Flack <flackr@gmail.com> | 2015-03-26 19:34:26 +0000 |
commit | efa49c2665b06f754f6b32348963c264cf27a38a (patch) | |
tree | db3ad77c8640a9cb5728a2f7ff7e11ed003356ec | |
parent | 8ce6499bdd80529ca602405ad406804c090d76ce (diff) | |
download | bcm5719-llvm-efa49c2665b06f754f6b32348963c264cf27a38a.tar.gz bcm5719-llvm-efa49c2665b06f754f6b32348963c264cf27a38a.zip |
Change expectedFailureOS and skipIfPlatform checks to be based on target platform when running test suite remotely.
Most expected OS failures or skipped tests are about the target platform on
which the test binary is being run, not the host platform launching the tests.
This changes expectedFailureOS and skipIfPlatform to check against the remote
platform when running remote tests.
Test Plan:
Run ./do_sep.py test suite against a remote target on a different platform and
verify that tests which should be excluded on the remote platform are excluded.
Differential Revision: http://reviews.llvm.org/D8611
llvm-svn: 233311
-rwxr-xr-x | lldb/test/dotest.py | 29 | ||||
-rw-r--r-- | lldb/test/lldbtest.py | 26 |
2 files changed, 31 insertions, 24 deletions
diff --git a/lldb/test/dotest.py b/lldb/test/dotest.py index 43461ed0ecf..7b477765a5f 100755 --- a/lldb/test/dotest.py +++ b/lldb/test/dotest.py @@ -125,20 +125,9 @@ just_do_lldbmi_test = False # By default, benchmarks tests are not run. just_do_benchmarks_test = False -# By default, both dsym and dwarf tests are performed. -# Use @dsym_test or @dwarf_test decorators, defined in lldbtest.py, to mark a test -# as a dsym or dwarf test. Use '-N dsym' or '-N dwarf' to exclude dsym or dwarf -# tests from running. -dont_do_dsym_test = "linux" in sys.platform or "freebsd" in sys.platform +dont_do_dsym_test = False dont_do_dwarf_test = False -# Don't do debugserver tests on everything except OS X. -# Something for Windows here? -dont_do_debugserver_test = "linux" in sys.platform or "freebsd" in sys.platform - -# Don't do lldb-server (llgs) tests on anything except Linux. -dont_do_llgs_test = not ("linux" in sys.platform) - # The blacklist is optional (-b blacklistFile) and allows a central place to skip # testclass's and/or testclass.testmethod's. blacklist = None @@ -1358,6 +1347,22 @@ if lldb_platform_name: else: lldb.remote_platform = None lldb.remote_platform_working_dir = None + +target_platform = lldb.DBG.GetSelectedPlatform().GetTriple().split('-')[2] + +# By default, both dsym and dwarf tests are performed. +# Use @dsym_test or @dwarf_test decorators, defined in lldbtest.py, to mark a test +# as a dsym or dwarf test. Use '-N dsym' or '-N dwarf' to exclude dsym or dwarf +# tests from running. +dont_do_dsym_test = dont_do_dsym_test or "linux" in target_platform or "freebsd" in target_platform + +# Don't do debugserver tests on everything except OS X. +# Something for Windows here? +dont_do_debugserver_test = "linux" in target_platform or "freebsd" in target_platform + +# Don't do lldb-server (llgs) tests on anything except Linux. +dont_do_llgs_test = not ("linux" in target_platform) + # Put the blacklist in the lldb namespace, to be used by lldb.TestBase. lldb.blacklist = blacklist diff --git a/lldb/test/lldbtest.py b/lldb/test/lldbtest.py index bb71b279c67..ed9fac45bba 100644 --- a/lldb/test/lldbtest.py +++ b/lldb/test/lldbtest.py @@ -584,22 +584,24 @@ def expectedFailurei386(bugnumber=None): def expectedFailurex86_64(bugnumber=None): if bugnumber: return expectedFailureArch('x86_64', bugnumber) -def expectedFailureOS(os, bugnumber=None, compilers=None): +def expectedFailureOS(oslist, bugnumber=None, compilers=None): def fn(self): - return os in sys.platform and self.expectedCompiler(compilers) + return (lldb.DBG.GetSelectedPlatform().GetTriple().split('-')[2] in oslist and + self.expectedCompiler(compilers)) if bugnumber: return expectedFailure(fn, bugnumber) def expectedFailureDarwin(bugnumber=None, compilers=None): - if bugnumber: return expectedFailureOS('darwin', bugnumber, compilers) + # For legacy reasons, we support both "darwin" and "macosx" as OS X triples. + if bugnumber: return expectedFailureOS(['darwin', 'macosx'], bugnumber, compilers) def expectedFailureFreeBSD(bugnumber=None, compilers=None): - if bugnumber: return expectedFailureOS('freebsd', bugnumber, compilers) + if bugnumber: return expectedFailureOS(['freebsd'], bugnumber, compilers) def expectedFailureLinux(bugnumber=None, compilers=None): - if bugnumber: return expectedFailureOS('linux', bugnumber, compilers) + if bugnumber: return expectedFailureOS(['linux'], bugnumber, compilers) def expectedFailureWindows(bugnumber=None, compilers=None): - if bugnumber: return expectedFailureOS('win32', bugnumber, compilers) + if bugnumber: return expectedFailureOS(['windows'], bugnumber, compilers) def expectedFailureLLGS(bugnumber=None, compilers=None): def fn(self): @@ -646,7 +648,7 @@ def skipIfFreeBSD(func): def wrapper(*args, **kwargs): from unittest2 import case self = args[0] - platform = sys.platform + platform = lldb.DBG.GetSelectedPlatform().GetTriple().split('-')[2] if "freebsd" in platform: self.skipTest("skip on FreeBSD") else: @@ -661,7 +663,7 @@ def skipIfLinux(func): def wrapper(*args, **kwargs): from unittest2 import case self = args[0] - platform = sys.platform + platform = lldb.DBG.GetSelectedPlatform().GetTriple().split('-')[2] if "linux" in platform: self.skipTest("skip on linux") else: @@ -695,8 +697,8 @@ def skipIfWindows(func): def wrapper(*args, **kwargs): from unittest2 import case self = args[0] - platform = sys.platform - if "win32" in platform: + platform = lldb.DBG.GetSelectedPlatform().GetTriple().split('-')[2] + if "windows" in platform: self.skipTest("skip on Windows") else: func(*args, **kwargs) @@ -710,8 +712,8 @@ def skipIfDarwin(func): def wrapper(*args, **kwargs): from unittest2 import case self = args[0] - platform = sys.platform - if "darwin" in platform: + platform = lldb.DBG.GetSelectedPlatform().GetTriple().split('-')[2] + if "darwin" in platform or "macosx" in platform: self.skipTest("skip on darwin") else: func(*args, **kwargs) |