diff options
author | Jacob Schloss <jschloss@swiftengineering.com> | 2018-08-22 12:55:43 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-08-22 12:55:43 -0700 |
commit | 6de39826aa190a07179a8104c00ad11ea20d8679 (patch) | |
tree | 3413eb72b75b6aad6392407713f5596c0f477fd6 /googlemock/scripts/generator/cpp | |
parent | 6e7980164593bfe888d6e94ee52d4d08bdddb412 (diff) | |
parent | 1d9a1912e7f42e8ae66ea365b5b8508fecb31509 (diff) | |
download | googletest-6de39826aa190a07179a8104c00ad11ea20d8679.tar.gz googletest-6de39826aa190a07179a8104c00ad11ea20d8679.tar.bz2 googletest-6de39826aa190a07179a8104c00ad11ea20d8679.zip |
Merge branch 'master' into issue_1735
Diffstat (limited to 'googlemock/scripts/generator/cpp')
-rwxr-xr-x | googlemock/scripts/generator/cpp/ast.py | 3 | ||||
-rwxr-xr-x | googlemock/scripts/generator/cpp/gmock_class_test.py | 18 |
2 files changed, 21 insertions, 0 deletions
diff --git a/googlemock/scripts/generator/cpp/ast.py b/googlemock/scripts/generator/cpp/ast.py index cce32724..f14728b4 100755 --- a/googlemock/scripts/generator/cpp/ast.py +++ b/googlemock/scripts/generator/cpp/ast.py @@ -1264,6 +1264,9 @@ class AstBuilder(object): return self._GetNestedType(Union) def handle_enum(self): + token = self._GetNextToken() + if not (token.token_type == tokenize.NAME and token.name == 'class'): + self._AddBackToken(token) return self._GetNestedType(Enum) def handle_auto(self): diff --git a/googlemock/scripts/generator/cpp/gmock_class_test.py b/googlemock/scripts/generator/cpp/gmock_class_test.py index 018f90a6..c53e6000 100755 --- a/googlemock/scripts/generator/cpp/gmock_class_test.py +++ b/googlemock/scripts/generator/cpp/gmock_class_test.py @@ -444,5 +444,23 @@ void(const FooType& test_arg)); self.assertEqualIgnoreLeadingWhitespace( expected, self.GenerateMocks(source)) + def testEnumClass(self): + source = """ +class Test { + public: + enum class Baz { BAZINGA }; + virtual void Bar(const FooType& test_arg); +}; +""" + expected = """\ +class MockTest : public Test { +public: +MOCK_METHOD1(Bar, +void(const FooType& test_arg)); +}; +""" + self.assertEqualIgnoreLeadingWhitespace( + expected, self.GenerateMocks(source)) + if __name__ == '__main__': unittest.main() |