sanitycheck: support --force-platform
This option allows running tests on platforms that would be excluded
based on the test definition.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
diff --git a/scripts/sanity_chk/sanitylib.py b/scripts/sanity_chk/sanitylib.py
index b784a19..9575865 100644
--- a/scripts/sanity_chk/sanitylib.py
+++ b/scripts/sanity_chk/sanitylib.py
@@ -2539,6 +2539,7 @@
all_filter = kwargs.get('all')
device_testing_filter = kwargs.get('device_testing')
force_toolchain = kwargs.get('force_toolchain')
+ force_platform = kwargs.get('force_platform')
logger.debug("platform filter: " + str(platform_filter))
logger.debug(" arch_filter: " + str(arch_filter))
@@ -2573,7 +2574,7 @@
self.device_testing,
self.fixture
)
- if plat.name in exclude_platform:
+ if not force_platform and plat.name in exclude_platform:
discards[instance] = "Platform is excluded on command line."
continue
@@ -2608,17 +2609,19 @@
discards[instance] = "Command line testcase arch filter"
continue
- if tc.arch_whitelist and plat.arch not in tc.arch_whitelist:
- discards[instance] = "Not in test case arch whitelist"
- continue
+ if not force_platform:
- if tc.arch_exclude and plat.arch in tc.arch_exclude:
- discards[instance] = "In test case arch exclude"
- continue
+ if tc.arch_whitelist and plat.arch not in tc.arch_whitelist:
+ discards[instance] = "Not in test case arch whitelist"
+ continue
- if tc.platform_exclude and plat.name in tc.platform_exclude:
- discards[instance] = "In test case platform exclude"
- continue
+ if tc.arch_exclude and plat.arch in tc.arch_exclude:
+ discards[instance] = "In test case arch exclude"
+ continue
+
+ if tc.platform_exclude and plat.name in tc.platform_exclude:
+ discards[instance] = "In test case platform exclude"
+ continue
if tc.toolchain_exclude and toolchain in tc.toolchain_exclude:
discards[instance] = "In test case toolchain exclude"