diff options
author | 2023-06-22 12:58:37 +0000 | |
---|---|---|
committer | 2023-06-22 14:41:53 +0000 | |
commit | 914d59c5581152f8b0cc5ec477ff926eddcce7c3 (patch) | |
tree | 27edc9dab45c7cac3a29641b668b9443d20d6dfd | |
parent | f2c10b0037892291113daf4f470affaea2ceefbb (diff) |
Introduce GTEST_SKIP() calls in TEST_DISABLED* macros
There are a number of TEST_DISABLED* macros used to skip
tests that are not meant to run under the current config,
which print out a warning to stdout and return, marking
these tests as PASSED. This CL rewrites these macros to
use the GTEST_SKIP() macro, such that the tests including
the macros will be (correctly) marked as IGNORED.
Bug: 237512169
Test: atest ArtGtestsTargetChroot
Change-Id: I8212a0d53c62cc03d7a124831c843af215289ea9
-rw-r--r-- | libartbase/base/common_art_test.h | 57 | ||||
-rw-r--r-- | runtime/common_runtime_test.h | 60 |
2 files changed, 47 insertions, 70 deletions
diff --git a/libartbase/base/common_art_test.h b/libartbase/base/common_art_test.h index 7f018ff313..9a1e84eabf 100644 --- a/libartbase/base/common_art_test.h +++ b/libartbase/base/common_art_test.h @@ -297,62 +297,55 @@ using CommonArtTestWithParam = CommonArtTestBase<testing::TestWithParam<Param>>; // matches the given name. std::vector<pid_t> GetPidByName(const std::string& process_name); -#define TEST_DISABLED_FOR_TARGET() \ - if (kIsTargetBuild) { \ - printf("WARNING: TEST DISABLED FOR TARGET\n"); \ - return; \ +#define TEST_DISABLED_FOR_TARGET() \ + if (kIsTargetBuild) { \ + GTEST_SKIP() << "WARNING: TEST DISABLED FOR TARGET"; \ } -#define TEST_DISABLED_FOR_HOST() \ - if (!kIsTargetBuild) { \ - printf("WARNING: TEST DISABLED FOR HOST\n"); \ - return; \ +#define TEST_DISABLED_FOR_HOST() \ + if (!kIsTargetBuild) { \ + GTEST_SKIP() << "WARNING: TEST DISABLED FOR HOST"; \ } -#define TEST_DISABLED_FOR_NON_STATIC_HOST_BUILDS() \ - if (!kHostStaticBuildEnabled) { \ - printf("WARNING: TEST DISABLED FOR NON-STATIC HOST BUILDS\n"); \ - return; \ +#define TEST_DISABLED_FOR_NON_STATIC_HOST_BUILDS() \ + if (!kHostStaticBuildEnabled) { \ + GTEST_SKIP() << "WARNING: TEST DISABLED FOR NON-STATIC HOST BUILDS"; \ } -#define TEST_DISABLED_FOR_MEMORY_TOOL() \ - if (kRunningOnMemoryTool) { \ - printf("WARNING: TEST DISABLED FOR MEMORY TOOL\n"); \ - return; \ +#define TEST_DISABLED_FOR_MEMORY_TOOL() \ + if (kRunningOnMemoryTool) { \ + GTEST_SKIP() << "WARNING: TEST DISABLED FOR MEMORY TOOL"; \ } -#define TEST_DISABLED_FOR_HEAP_POISONING() \ - if (kPoisonHeapReferences) { \ - printf("WARNING: TEST DISABLED FOR HEAP POISONING\n"); \ - return; \ +#define TEST_DISABLED_FOR_HEAP_POISONING() \ + if (kPoisonHeapReferences) { \ + GTEST_SKIP() << "WARNING: TEST DISABLED FOR HEAP POISONING"; \ } } // namespace art -#define TEST_DISABLED_FOR_MEMORY_TOOL_WITH_HEAP_POISONING() \ - if (kRunningOnMemoryTool && kPoisonHeapReferences) { \ - printf("WARNING: TEST DISABLED FOR MEMORY TOOL WITH HEAP POISONING\n"); \ - return; \ +#define TEST_DISABLED_FOR_MEMORY_TOOL_WITH_HEAP_POISONING() \ + if (kRunningOnMemoryTool && kPoisonHeapReferences) { \ + GTEST_SKIP() << "WARNING: TEST DISABLED FOR MEMORY TOOL WITH HEAP POISONING"; \ } -#define TEST_DISABLED_FOR_RISCV64() \ - if (kRuntimeISA == InstructionSet::kRiscv64) { \ - printf("WARNING: TEST DISABLED FOR RISCV64\n"); \ - return; \ +#define TEST_DISABLED_FOR_RISCV64() \ + if (kRuntimeISA == InstructionSet::kRiscv64) { \ + GTEST_SKIP() << "WARNING: TEST DISABLED FOR RISCV64"; \ } // Don't print messages on setup to avoid getting multiple "test disabled" messages for one test. // Setup phase may need to be disabled as some test rely on having boot image / compiler / other // things that are not implemented for RISC-V. -#define TEST_SETUP_DISABLED_FOR_RISCV64() \ +#define TEST_SETUP_DISABLED_FOR_RISCV64() \ if (kRuntimeISA == InstructionSet::kRiscv64) { \ - return; \ + GTEST_SKIP(); \ } // Don't print messages on teardown to avoid getting multiple "test disabled" messages for one test. // Teardown phase may need to be disabled to match the disabled setup phase for some tests. -#define TEST_TEARDOWN_DISABLED_FOR_RISCV64() \ +#define TEST_TEARDOWN_DISABLED_FOR_RISCV64() \ if (kRuntimeISA == InstructionSet::kRiscv64) { \ - return; \ + GTEST_SKIP(); \ } #endif // ART_LIBARTBASE_BASE_COMMON_ART_TEST_H_ diff --git a/runtime/common_runtime_test.h b/runtime/common_runtime_test.h index 0f82c4bccf..e82db84a71 100644 --- a/runtime/common_runtime_test.h +++ b/runtime/common_runtime_test.h @@ -270,58 +270,42 @@ class CheckJniAbortCatcher { DISALLOW_COPY_AND_ASSIGN(CheckJniAbortCatcher); }; -#define TEST_DISABLED() \ - do { \ - printf("WARNING: TEST DISABLED\n"); \ - return; \ - } while (false) +#define TEST_DISABLED() GTEST_SKIP() << "WARNING: TEST DISABLED"; -#define TEST_DISABLED_FOR_ARM() \ +#define TEST_DISABLED_FOR_ARM() \ if (kRuntimeISA == InstructionSet::kArm || kRuntimeISA == InstructionSet::kThumb2) { \ - printf("WARNING: TEST DISABLED FOR ARM\n"); \ - return; \ + GTEST_SKIP() << "WARNING: TEST DISABLED FOR ARM"; \ } -#define TEST_DISABLED_FOR_ARM64() \ - if (kRuntimeISA == InstructionSet::kArm64) { \ - printf("WARNING: TEST DISABLED FOR ARM64\n"); \ - return; \ +#define TEST_DISABLED_FOR_ARM64() \ + if (kRuntimeISA == InstructionSet::kArm64) { \ + GTEST_SKIP() << "WARNING: TEST DISABLED FOR ARM64"; \ } -#define TEST_DISABLED_FOR_X86() \ - if (kRuntimeISA == InstructionSet::kX86) { \ - printf("WARNING: TEST DISABLED FOR X86\n"); \ - return; \ +#define TEST_DISABLED_FOR_X86() \ + if (kRuntimeISA == InstructionSet::kX86) { \ + GTEST_SKIP() << "WARNING: TEST DISABLED FOR X86"; \ } -#define TEST_DISABLED_FOR_X86_64() \ - if (kRuntimeISA == InstructionSet::kX86_64) { \ - printf("WARNING: TEST DISABLED FOR X86_64\n"); \ - return; \ +#define TEST_DISABLED_FOR_X86_64() \ + if (kRuntimeISA == InstructionSet::kX86_64) { \ + GTEST_SKIP() << "WARNING: TEST DISABLED FOR X86_64"; \ } -#define TEST_DISABLED_WITHOUT_BAKER_READ_BARRIERS() \ - if (!gUseReadBarrier || !kUseBakerReadBarrier) { \ - printf("WARNING: TEST DISABLED FOR GC WITHOUT BAKER READ BARRIER\n"); \ - return; \ +#define TEST_DISABLED_WITHOUT_BAKER_READ_BARRIERS() \ + if (!gUseReadBarrier || !kUseBakerReadBarrier) { \ + GTEST_SKIP() << "WARNING: TEST DISABLED FOR GC WITHOUT BAKER READ BARRIER"; \ } -#define TEST_DISABLED_FOR_HEAP_POISONING() \ - if (kPoisonHeapReferences) { \ - printf("WARNING: TEST DISABLED FOR HEAP POISONING\n"); \ - return; \ +#define TEST_DISABLED_FOR_MEMORY_TOOL_WITH_HEAP_POISONING_WITHOUT_READ_BARRIERS() \ + if (kRunningOnMemoryTool && kPoisonHeapReferences && !gUseReadBarrier) { \ + GTEST_SKIP() \ + << "WARNING: TEST DISABLED FOR MEMORY TOOL WITH HEAP POISONING WITHOUT READ BARRIERS"; \ } -#define TEST_DISABLED_FOR_MEMORY_TOOL_WITH_HEAP_POISONING_WITHOUT_READ_BARRIERS() \ - if (kRunningOnMemoryTool && kPoisonHeapReferences && !gUseReadBarrier) { \ - printf("WARNING: TEST DISABLED FOR MEMORY TOOL WITH HEAP POISONING WITHOUT READ BARRIERS\n"); \ - return; \ - } - -#define TEST_DISABLED_FOR_KERNELS_WITH_CACHE_SEGFAULT() \ - if (CacheOperationsMaySegFault()) { \ - printf("WARNING: TEST DISABLED ON KERNEL THAT SEGFAULT ON CACHE OPERATIONS\n"); \ - return; \ +#define TEST_DISABLED_FOR_KERNELS_WITH_CACHE_SEGFAULT() \ + if (CacheOperationsMaySegFault()) { \ + GTEST_SKIP() << "WARNING: TEST DISABLED ON KERNEL THAT SEGFAULT ON CACHE OPERATIONS"; \ } } // namespace art |