From 9b25d4557040da82c582d7dca22bc7a334a97f48 Mon Sep 17 00:00:00 2001 From: "yuki@chromium.org" Date: Thu, 7 Feb 2013 09:46:24 +0000 Subject: Code cleaning: Uses scoped_ptr<> to express ownership rather than writing ownership in comments. Replaces Response* with scoped_ptr in dbus code and its related code. BUG=163231 TEST=no regression / no behavior changes Review URL: https://chromiumcodereview.appspot.com/12092061 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@181266 0039d316-1c4b-4281-b951-d872f2087c98 --- dbus/mock_object_proxy.h | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) (limited to 'dbus/mock_object_proxy.h') diff --git a/dbus/mock_object_proxy.h b/dbus/mock_object_proxy.h index e820f45..fcad860 100644 --- a/dbus/mock_object_proxy.h +++ b/dbus/mock_object_proxy.h @@ -7,6 +7,7 @@ #include +#include "dbus/message.h" #include "dbus/object_path.h" #include "dbus/object_proxy.h" #include "testing/gmock/include/gmock/gmock.h" @@ -20,8 +21,17 @@ class MockObjectProxy : public ObjectProxy { const std::string& service_name, const ObjectPath& object_path); - MOCK_METHOD2(CallMethodAndBlock, Response*(MethodCall* method_call, - int timeout_ms)); + // GMock doesn't support the return type of scoped_ptr<> because scoped_ptr is + // uncopyable. This is a workaround which defines |MockCallMethodAndBlock| as + // a mock method and makes |CallMethodAndBlock| call the mocked method. + // Use |MockCallMethodAndBlock| for setting/testing expectations. + MOCK_METHOD2(MockCallMethodAndBlock, Response*(MethodCall* method_call, + int timeout_ms)); + virtual scoped_ptr CallMethodAndBlock(MethodCall* method_call, + int timeout_ms) OVERRIDE { + return scoped_ptr(MockCallMethodAndBlock(method_call, + timeout_ms)); + } MOCK_METHOD3(CallMethod, void(MethodCall* method_call, int timeout_ms, ResponseCallback callback)); -- cgit v1.1