diff --git a/test/gtest-linked_ptr_test.cc b/test/gtest-linked_ptr_test.cc index efd6b1ed..0d5508ae 100644 --- a/test/gtest-linked_ptr_test.cc +++ b/test/gtest-linked_ptr_test.cc @@ -77,7 +77,8 @@ class LinkedPtrTest : public testing::Test { TEST_F(LinkedPtrTest, GeneralTest) { { linked_ptr a0, a1, a2; - a0 = a0; + // Use explicit function call notation here to suppress self-assign warning. + a0.operator=(a0); a1 = a2; ASSERT_EQ(a0.get(), static_cast(NULL)); ASSERT_EQ(a1.get(), static_cast(NULL)); diff --git a/test/gtest_nc_test.py b/test/gtest_nc_test.py index bf09234a..c60b96e5 100755 --- a/test/gtest_nc_test.py +++ b/test/gtest_nc_test.py @@ -46,68 +46,69 @@ if not IS_LINUX: class GTestNCTest(unittest.TestCase): """Negative compilation test for Google Test.""" - def testCompilerError(self): - """Verifies that erroneous code leads to expected compiler - messages.""" + # The class body is intentionally empty. The actual test*() methods + # will be defined at run time by a call to + # DefineNegativeCompilationTests() later. + pass - # Defines a list of test specs, where each element is a tuple - # (test name, list of regexes for matching the compiler errors). - test_specs = [ - ('CANNOT_IGNORE_RUN_ALL_TESTS_RESULT', - [r'ignoring return value']), +# Defines a list of test specs, where each element is a tuple +# (test name, list of regexes for matching the compiler errors). +TEST_SPECS = [ + ('CANNOT_IGNORE_RUN_ALL_TESTS_RESULT', + [r'ignoring return value']), - ('USER_CANNOT_INCLUDE_GTEST_INTERNAL_INL_H', - [r'must not be included except by Google Test itself']), + ('USER_CANNOT_INCLUDE_GTEST_INTERNAL_INL_H', + [r'must not be included except by Google Test itself']), - ('CATCHES_DECLARING_SETUP_IN_TEST_FIXTURE_WITH_TYPO', - [r'Setup_should_be_spelled_SetUp']), + ('CATCHES_DECLARING_SETUP_IN_TEST_FIXTURE_WITH_TYPO', + [r'Setup_should_be_spelled_SetUp']), - ('CATCHES_CALLING_SETUP_IN_TEST_WITH_TYPO', - [r'Setup_should_be_spelled_SetUp']), + ('CATCHES_CALLING_SETUP_IN_TEST_WITH_TYPO', + [r'Setup_should_be_spelled_SetUp']), - ('CATCHES_DECLARING_SETUP_IN_ENVIRONMENT_WITH_TYPO', - [r'Setup_should_be_spelled_SetUp']), + ('CATCHES_DECLARING_SETUP_IN_ENVIRONMENT_WITH_TYPO', + [r'Setup_should_be_spelled_SetUp']), - ('CATCHES_CALLING_SETUP_IN_ENVIRONMENT_WITH_TYPO', - [r'Setup_should_be_spelled_SetUp']), + ('CATCHES_CALLING_SETUP_IN_ENVIRONMENT_WITH_TYPO', + [r'Setup_should_be_spelled_SetUp']), - ('CATCHES_WRONG_CASE_IN_TYPED_TEST_P', - [r'BarTest.*was not declared', # GCC - r'undeclared identifier .*BarTest', # Clang - ]), + ('CATCHES_WRONG_CASE_IN_TYPED_TEST_P', + [r'BarTest.*was not declared', # GCC + r'undeclared identifier .*BarTest', # Clang + ]), - ('CATCHES_WRONG_CASE_IN_REGISTER_TYPED_TEST_CASE_P', - [r'BarTest.*was not declared', # GCC - r'undeclared identifier .*BarTest', # Clang - ]), + ('CATCHES_WRONG_CASE_IN_REGISTER_TYPED_TEST_CASE_P', + [r'BarTest.*was not declared', # GCC + r'undeclared identifier .*BarTest', # Clang + ]), - ('CATCHES_WRONG_CASE_IN_INSTANTIATE_TYPED_TEST_CASE_P', - [r'BarTest.*not declared', # GCC - r'undeclared identifier .*BarTest', # Clang - ]), + ('CATCHES_WRONG_CASE_IN_INSTANTIATE_TYPED_TEST_CASE_P', + [r'BarTest.*not declared', # GCC + r'undeclared identifier .*BarTest', # Clang + ]), - ('CATCHES_INSTANTIATE_TYPED_TESET_CASE_P_WITH_SAME_NAME_PREFIX', - [r'redefinition of.*My.*FooTest']), + ('CATCHES_INSTANTIATE_TYPED_TESET_CASE_P_WITH_SAME_NAME_PREFIX', + [r'redefinition of.*My.*FooTest']), - ('STATIC_ASSERT_TYPE_EQ_IS_NOT_A_TYPE', - [r'StaticAssertTypeEq.* does not name a type', # GCC - r'requires a type.*\n.*StaticAssertTypeEq', # Clang - ]), + ('STATIC_ASSERT_TYPE_EQ_IS_NOT_A_TYPE', + [r'StaticAssertTypeEq.* does not name a type', # GCC + r'requires a type.*\n.*StaticAssertTypeEq', # Clang + ]), - ('STATIC_ASSERT_TYPE_EQ_WORKS_IN_NAMESPACE', - [r'StaticAssertTypeEq.*int.*const int']), + ('STATIC_ASSERT_TYPE_EQ_WORKS_IN_NAMESPACE', + [r'StaticAssertTypeEq.*int.*const int']), - ('STATIC_ASSERT_TYPE_EQ_WORKS_IN_CLASS', - [r'StaticAssertTypeEq.*int.*bool']), + ('STATIC_ASSERT_TYPE_EQ_WORKS_IN_CLASS', + [r'StaticAssertTypeEq.*int.*bool']), - ('STATIC_ASSERT_TYPE_EQ_WORKS_IN_FUNCTION', - [r'StaticAssertTypeEq.*const int.*int']), + ('STATIC_ASSERT_TYPE_EQ_WORKS_IN_FUNCTION', + [r'StaticAssertTypeEq.*const int.*int']), - ('SANITY', - None) - ] + ('SANITY', + None) + ] - # TODO(wan@google.com): verify that the test specs are satisfied. +# TODO(wan@google.com): verify that the test specs are satisfied. if __name__ == '__main__': diff --git a/test/gtest_unittest.cc b/test/gtest_unittest.cc index 5a93ff26..89a4a0e7 100644 --- a/test/gtest_unittest.cc +++ b/test/gtest_unittest.cc @@ -1150,7 +1150,8 @@ TEST(StringTest, CanBeAssignedNonEmpty) { TEST(StringTest, CanBeAssignedSelf) { String dest("hello"); - dest = dest; + // Use explicit function call notation here to suppress self-assign warning. + dest.operator=(dest); EXPECT_STREQ("hello", dest.c_str()); }