test: Don’t hide --gtest_* arguments from Chromium’s test runner

testing::InitGoogleMock() and testing::InitGoogleTest() modify argc and
argv, removing --gtest_* arguments that are processed. When building as
a part of Chromium, this prevents these arguments from being visible to
Chromium’s base::LaunchUnitTests() test runner.

Only call these initialization functions when using gtest’s native
RUN_ALL_TESTS() test runner.

Change-Id: I8242e1047f90d1cd923518a5cb9bd2527201ad25
Reviewed-on: https://chromium-review.googlesource.com/746082
Reviewed-by: Leonard Mosescu <mosescu@chromium.org>
This commit is contained in:
Mark Mentovai 2017-10-30 23:55:51 -04:00
parent 7e82179d43
commit 8db7e7dc39

View File

@ -33,15 +33,6 @@
int main(int argc, char* argv[]) {
crashpad::test::InitializeMainArguments(argc, argv);
#if defined(CRASHPAD_TEST_LAUNCHER_GMOCK)
testing::InitGoogleMock(&argc, argv);
#elif defined(CRASHPAD_TEST_LAUNCHER_GTEST)
testing::InitGoogleTest(&argc, argv);
#else // CRASHPAD_TEST_LAUNCHER_GTEST
#error #define CRASHPAD_TEST_LAUNCHER_GTEST or CRASHPAD_TEST_LAUNCHER_GMOCK
#endif // CRASHPAD_TEST_LAUNCHER_GTEST
testing::AddGlobalTestEnvironment(
crashpad::test::DisabledTestGtestEnvironment::Get());
@ -69,5 +60,13 @@ int main(int argc, char* argv[]) {
#endif // CRASHPAD_IN_CHROMIUM
#if defined(CRASHPAD_TEST_LAUNCHER_GMOCK)
testing::InitGoogleMock(&argc, argv);
#elif defined(CRASHPAD_TEST_LAUNCHER_GTEST)
testing::InitGoogleTest(&argc, argv);
#else // CRASHPAD_TEST_LAUNCHER_GMOCK
#error #define CRASHPAD_TEST_LAUNCHER_GTEST or CRASHPAD_TEST_LAUNCHER_GMOCK
#endif // CRASHPAD_TEST_LAUNCHER_GMOCK
return RUN_ALL_TESTS();
}