Fixes the definition of GTEST_ATTRIBUTE_UNUSED and make the tests pass in opt mode.
This commit is contained in:
parent
bf9b4b48dc
commit
bcb12fa0f6
@ -249,11 +249,11 @@
|
||||
// struct Foo {
|
||||
// Foo() { ... }
|
||||
// } GTEST_ATTRIBUTE_UNUSED;
|
||||
#if defined(GTEST_OS_WINDOWS) || (defined(GTEST_OS_LINUX) && defined(SWIG))
|
||||
#define GTEST_ATTRIBUTE_UNUSED
|
||||
#else
|
||||
#if defined(__GNUC__) && !defined(COMPILER_ICC)
|
||||
#define GTEST_ATTRIBUTE_UNUSED __attribute__ ((unused))
|
||||
#endif // GTEST_OS_WINDOWS || (GTEST_OS_LINUX && SWIG)
|
||||
#else
|
||||
#define GTEST_ATTRIBUTE_UNUSED
|
||||
#endif
|
||||
|
||||
// A macro to disallow the evil copy constructor and operator= functions
|
||||
// This should be used in the private: declarations for a class.
|
||||
|
@ -467,31 +467,6 @@ TEST_F(TestForDeathTest, TestExpectDebugDeath) {
|
||||
#endif
|
||||
}
|
||||
|
||||
// Tests that EXPECT_DEBUG_DEATH works as expected,
|
||||
// that is, in debug mode, it:
|
||||
// 1. Asserts on death.
|
||||
// 2. Has no side effect.
|
||||
//
|
||||
// And in opt mode, it:
|
||||
// 1. Has side effects and returns the expected value (12).
|
||||
TEST_F(TestForDeathTest, TestExpectDebugDeathM) {
|
||||
int sideeffect = 0;
|
||||
EXPECT_DEBUG_DEATH({ // NOLINT
|
||||
// Tests that the return value is 12 in opt mode.
|
||||
EXPECT_EQ(12, DieInDebugElse12(&sideeffect));
|
||||
// Tests that the side effect occurrs in opt mode.
|
||||
EXPECT_EQ(12, sideeffect);
|
||||
}, "death.*DieInDebugElse12") << "In ExpectDebugDeathM";
|
||||
|
||||
#ifdef NDEBUG
|
||||
// Checks that the assignment occurs in opt mode (sideeffect).
|
||||
EXPECT_EQ(12, sideeffect);
|
||||
#else
|
||||
// Checks that the assignment does not occur in dbg mode (no sideeffect).
|
||||
EXPECT_EQ(0, sideeffect);
|
||||
#endif
|
||||
}
|
||||
|
||||
// Tests that ASSERT_DEBUG_DEATH works as expected
|
||||
// In debug mode:
|
||||
// 1. Asserts on debug death.
|
||||
@ -499,7 +474,7 @@ TEST_F(TestForDeathTest, TestExpectDebugDeathM) {
|
||||
//
|
||||
// In opt mode:
|
||||
// 1. Has side effects and returns the expected value (12).
|
||||
TEST_F(TestForDeathTest, TestAssertDebugDeathM) {
|
||||
TEST_F(TestForDeathTest, TestAssertDebugDeath) {
|
||||
int sideeffect = 0;
|
||||
|
||||
ASSERT_DEBUG_DEATH({ // NOLINT
|
||||
@ -507,7 +482,7 @@ TEST_F(TestForDeathTest, TestAssertDebugDeathM) {
|
||||
EXPECT_EQ(12, DieInDebugElse12(&sideeffect));
|
||||
// Tests that the side effect occurred in opt mode.
|
||||
EXPECT_EQ(12, sideeffect);
|
||||
}, "death.*DieInDebugElse12") << "In AssertDebugDeathM";
|
||||
}, "death.*DieInDebugElse12");
|
||||
|
||||
#ifdef NDEBUG
|
||||
// Checks that the assignment occurs in opt mode (sideeffect).
|
||||
|
@ -58,6 +58,8 @@ using testing::GTEST_FLAG(repeat);
|
||||
|
||||
namespace {
|
||||
|
||||
// We need this when we are testing Google Test itself and therefore
|
||||
// cannot use Google Test assertions.
|
||||
#define GTEST_CHECK_INT_EQ_(expected, actual) \
|
||||
do {\
|
||||
const int expected_val = (expected);\
|
||||
@ -130,8 +132,6 @@ void ResetCounts() {
|
||||
|
||||
// Checks that the count for each test is expected.
|
||||
void CheckCounts(int expected) {
|
||||
// We cannot use Google Test assertions here since we are testing Google Test
|
||||
// itself.
|
||||
GTEST_CHECK_INT_EQ_(expected, g_environment_set_up_count);
|
||||
GTEST_CHECK_INT_EQ_(expected, g_environment_tear_down_count);
|
||||
GTEST_CHECK_INT_EQ_(expected, g_should_fail_count);
|
||||
|
Loading…
Reference in New Issue
Block a user