You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
43 lines
1.3 KiB
43 lines
1.3 KiB
"""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()
|
|
|