Work around for gmock 1.7.0 issue with unique_ptr Change-Id: I0b50b862e342af8bcde8dcfa0553956cfe2594bc Reviewed-on: https://weave-review.googlesource.com/1244 Reviewed-by: Alex Vakulenko <avakulenko@google.com>
diff --git a/libweave/include/weave/test/mock_device.h b/libweave/include/weave/test/mock_device.h index 44298bb..480208e 100644 --- a/libweave/include/weave/test/mock_device.h +++ b/libweave/include/weave/test/mock_device.h
@@ -27,8 +27,8 @@ bool(const base::DictionaryValue&, std::string*, ErrorPtr*)); MOCK_METHOD1(FindCommand, Command*(const std::string&)); MOCK_METHOD1(AddStateChangedCallback, void(const base::Closure& callback)); - MOCK_CONST_METHOD1(GetStateProperty, - std::unique_ptr<base::Value>(const std::string& name)); + MOCK_CONST_METHOD1(MockGetStateProperty, + base::Value*(const std::string& name)); MOCK_METHOD3(SetStateProperty, bool(const std::string& name, const base::Value& value, @@ -36,7 +36,7 @@ MOCK_METHOD2(SetStateProperties, bool(const base::DictionaryValue& property_set, ErrorPtr* error)); - MOCK_CONST_METHOD0(GetState, std::unique_ptr<base::DictionaryValue>()); + MOCK_CONST_METHOD0(MockGetState, base::DictionaryValue*()); MOCK_CONST_METHOD0(GetGcdState, GcdState()); MOCK_METHOD1(AddGcdStateChangedCallback, void(const GcdStateChangedCallback& callback)); @@ -45,6 +45,15 @@ MOCK_METHOD2(AddPairingChangedCallbacks, void(const PairingBeginCallback& begin_callback, const PairingEndCallback& end_callback)); + + // Gmock 1.7.0 does not work with unuque_ptr as return value. + std::unique_ptr<base::Value> GetStateProperty( + const std::string& name) const override { + return std::unique_ptr<base::Value>(MockGetStateProperty(name)); + } + std::unique_ptr<base::DictionaryValue> GetState() const override { + return std::unique_ptr<base::DictionaryValue>(MockGetState()); + } }; } // namespace test