aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/generator/cpp/gmock_class_test.py
diff options
context:
space:
mode:
authorkosak <kosak@google.com>2015-01-08 02:48:08 +0000
committerkosak <kosak@google.com>2015-01-08 02:48:08 +0000
commit8e838ce0fd145431b433f534c71bdb7f5d6b11ac (patch)
tree1e4823d9b0396e2cc0c6240824e4e12f6a41a08c /scripts/generator/cpp/gmock_class_test.py
parent6b817803104b30d5951c652a1427492db116a490 (diff)
downloadgoogletest-8e838ce0fd145431b433f534c71bdb7f5d6b11ac.tar.gz
googletest-8e838ce0fd145431b433f534c71bdb7f5d6b11ac.tar.bz2
googletest-8e838ce0fd145431b433f534c71bdb7f5d6b11ac.zip
Adding support to gmock_gen for nested templates.
Diffstat (limited to 'scripts/generator/cpp/gmock_class_test.py')
-rwxr-xr-xscripts/generator/cpp/gmock_class_test.py36
1 files changed, 36 insertions, 0 deletions
diff --git a/scripts/generator/cpp/gmock_class_test.py b/scripts/generator/cpp/gmock_class_test.py
index 27eb86c8..018f90a6 100755
--- a/scripts/generator/cpp/gmock_class_test.py
+++ b/scripts/generator/cpp/gmock_class_test.py
@@ -407,6 +407,42 @@ void());
self.assertEqualIgnoreLeadingWhitespace(
expected, self.GenerateMocks(source))
+ def testTemplateInATemplateTypedef(self):
+ source = """
+class Test {
+ public:
+ typedef std::vector<std::list<int>> FooType;
+ 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))
+
+ def testTemplateInATemplateTypedefWithComma(self):
+ source = """
+class Test {
+ public:
+ typedef std::function<void(
+ const vector<std::list<int>>&, int> FooType;
+ 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()