1 // Copyright 2015 The Weave Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef LIBWEAVE_INCLUDE_WEAVE_PROVIDER_TEST_MOCK_HTTP_CLIENT_H_ 6 #define LIBWEAVE_INCLUDE_WEAVE_PROVIDER_TEST_MOCK_HTTP_CLIENT_H_ 7 8 #include <weave/provider/http_client.h> 9 10 #include <memory> 11 #include <string> 12 13 #include <gmock/gmock.h> 14 15 namespace weave { 16 namespace provider { 17 namespace test { 18 19 class MockHttpClientResponse : public HttpClient::Response { 20 public: 21 MOCK_CONST_METHOD0(GetStatusCode, int()); 22 MOCK_CONST_METHOD0(GetContentType, std::string()); 23 MOCK_CONST_METHOD0(GetData, std::string()); 24 }; 25 26 class MockHttpClient : public HttpClient { 27 public: 28 ~MockHttpClient() override = default; 29 30 MOCK_METHOD5(SendRequest, 31 void(Method, 32 const std::string&, 33 const Headers&, 34 const std::string&, 35 const SendRequestCallback&)); 36 }; 37 38 } // namespace test 39 } // namespace provider 40 } // namespace weave 41 42 #endif // LIBWEAVE_INCLUDE_WEAVE_PROVIDER_TEST_MOCK_HTTP_CLIENT_H_ 43