
When built with `--define=absl=1` under Bazel, GoogleTest flags use ABSL_FLAG instead of GoogleTest's own implementation. There are some minor behavior differences in this mode. The most notable difference is that unrecognized flags result in a flag parsing error, and are not returned to the user though a modified argc/argv, unless they appear after the positional argument delimiter ("--"). For example, to pass a non-Abseil flag, you would have to do ./mytest --gtest_color=false -- --myflag=myvalue The documentation at https://abseil.io/docs/cpp/guides/flags may be helpful in understanding the behavior. There are some other minor differences. For example, passing --help results in the program returning 1 instead of 0. https://github.com/google/googletest/issues/3646 PiperOrigin-RevId: 439312700 Change-Id: Id696a25f50f24a5b1785c45ca8fa59794f86fd5c
1.2 KiB
1.2 KiB
Customization Points
The custom directory is an injection point for custom user configurations.
Header gtest.h
The following macros can be defined:
GTEST_OS_STACK_TRACE_GETTER_
- The name of an implementation ofOsStackTraceGetterInterface
.GTEST_CUSTOM_TEMPDIR_FUNCTION_
- An override fortesting::TempDir()
. Seetesting::TempDir
for semantics and signature.
Header gtest-port.h
The following macros can be defined:
Logging:
GTEST_LOG_(severity)
GTEST_CHECK_(condition)
- Functions
LogToStderr()
andFlushInfoLog()
have to be provided too.
Threading:
GTEST_HAS_NOTIFICATION_
- Enabled if Notification is already provided.GTEST_HAS_MUTEX_AND_THREAD_LOCAL_
- Enabled ifMutex
andThreadLocal
are already provided. Must also provideGTEST_DECLARE_STATIC_MUTEX_(mutex)
andGTEST_DEFINE_STATIC_MUTEX_(mutex)
GTEST_EXCLUSIVE_LOCK_REQUIRED_(locks)
GTEST_LOCK_EXCLUDED_(locks)
Underlying library support features
GTEST_HAS_CXXABI_H_
Exporting API symbols:
GTEST_API_
- Specifier for exported symbols.
Header gtest-printers.h
- See documentation at
gtest/gtest-printers.h
for details on how to define a custom printer.