12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- """Negative compilation tests for Google Mock macro MOCK_METHOD."""
- import os
- import sys
- IS_LINUX = os.name == "posix" and os.uname()[0] == "Linux"
- if not IS_LINUX:
- sys.stderr.write(
- "WARNING: Negative compilation tests are not supported on this platform")
- sys.exit(0)
- # Suppresses the 'Import not at the top of the file' lint complaint.
- # pylint: disable-msg=C6204
- from google3.testing.pybase import fake_target_util
- from google3.testing.pybase import googletest
- # pylint: enable-msg=C6204
- class GMockMethodNCTest(googletest.TestCase):
- """Negative compilation tests for MOCK_METHOD."""
- # 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 = [
- ("MOCK_METHOD_INVALID_CONST_SPEC",
- [r"onst cannot be recognized as a valid specification modifier"]),
- ]
- # Define a test method in GMockNCTest for each element in TEST_SPECS.
- fake_target_util.DefineNegativeCompilationTests(
- GMockMethodNCTest,
- "google3/third_party/googletest/googlemock/test/gmock-function-mocker_nc",
- "gmock-function-mocker_nc.o", TEST_SPECS)
- if __name__ == "__main__":
- googletest.main()
|