[Unit tests] Show skipped tests instead of painting them green.

Marking test as skipped is more honest than pretending it is successful!
Prevent confusion like in the following scenario for one given test:
  - ubsan: launched and sometimes failing.
  - tsan: never launched but always flagged OK.

Bug: webrtc:9778
Change-Id: Ie0be0759347eabd3c9d29dd5ea2de809511d1b97
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/145980
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Commit-Queue: Yves Gerey <yvesg@google.com>
Cr-Commit-Position: refs/heads/master@{#28597}
This commit is contained in:
Yves Gerey 2019-07-17 21:41:59 +02:00 committed by Commit Bot
parent 79b6980020
commit ee0550cc4e

View File

@ -69,19 +69,19 @@ namespace {
// Don't run these tests in combination with sanitizers.
// TODO(webrtc:9778): Re-enable on THREAD_SANITIZER?
#if !defined(ADDRESS_SANITIZER) && !defined(MEMORY_SANITIZER) && \
!defined(THREAD_SANITIZER)
#if defined(ADDRESS_SANITIZER) || defined(MEMORY_SANITIZER) || \
defined(THREAD_SANITIZER)
#define SKIP_TEST_IF_NOT(requirements_satisfied) \
do { \
if (!requirements_satisfied) { \
return; \
} \
GTEST_SKIP() << "Skipped for sanitizers."; \
} while (false)
#else
// Or if other audio-related requirements are not met.
#define SKIP_TEST_IF_NOT(requirements_satisfied) \
do { \
return; \
#define SKIP_TEST_IF_NOT(requirements_satisfied) \
do { \
if (!requirements_satisfied) { \
GTEST_SKIP() << "Skipped. No audio device found."; \
} \
} while (false)
#endif