gtest_unittest: Call FAIL() in lambda, fix incorrect fatality expectation
FAIL() evaluates into a return statement: 5b909beeec/googletest/include/gtest/internal/gtest-internal.h (L1347)
Calling it from the body of the test case turns all subsequent expectations into no-ops.
Fixes #3941
PiperOrigin-RevId: 466104977
Change-Id: Ic15f43acb734295a5c9690a2b5eec6f65e8c0814
This commit is contained in:
parent
5b909beeec
commit
4c9a3bb62b
@ -3454,10 +3454,10 @@ TEST_F(NoFatalFailureTest, MessageIsStreamable) {
|
||||
TestPartResultArray gtest_failures;
|
||||
{
|
||||
ScopedFakeTestPartResultReporter gtest_reporter(>est_failures);
|
||||
EXPECT_NO_FATAL_FAILURE(FAIL() << "foo") << "my message";
|
||||
EXPECT_NO_FATAL_FAILURE([] { FAIL() << "foo"; }()) << "my message";
|
||||
}
|
||||
ASSERT_EQ(2, gtest_failures.size());
|
||||
EXPECT_EQ(TestPartResult::kNonFatalFailure,
|
||||
EXPECT_EQ(TestPartResult::kFatalFailure,
|
||||
gtest_failures.GetTestPartResult(0).type());
|
||||
EXPECT_EQ(TestPartResult::kNonFatalFailure,
|
||||
gtest_failures.GetTestPartResult(1).type());
|
||||
|
Loading…
Reference in New Issue
Block a user