1// Copyright 2014 The Chromium OS 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 LIBBRILLO_BRILLO_HTTP_MOCK_TRANSPORT_H_ 6#define LIBBRILLO_BRILLO_HTTP_MOCK_TRANSPORT_H_ 7 8#include <memory> 9#include <string> 10 11#include <base/macros.h> 12#include <brillo/http/http_transport.h> 13#include <gmock/gmock.h> 14 15namespace brillo { 16namespace http { 17 18class MockTransport : public Transport { 19 public: 20 MockTransport() = default; 21 22 MOCK_METHOD6(CreateConnection, 23 std::shared_ptr<Connection>(const std::string&, 24 const std::string&, 25 const HeaderList&, 26 const std::string&, 27 const std::string&, 28 brillo::ErrorPtr*)); 29 MOCK_METHOD2(RunCallbackAsync, 30 void(const tracked_objects::Location&, const base::Closure&)); 31 MOCK_METHOD3(StartAsyncTransfer, RequestID(Connection*, 32 const SuccessCallback&, 33 const ErrorCallback&)); 34 MOCK_METHOD1(CancelRequest, bool(RequestID)); 35 MOCK_METHOD1(SetDefaultTimeout, void(base::TimeDelta)); 36 37 private: 38 DISALLOW_COPY_AND_ASSIGN(MockTransport); 39}; 40 41} // namespace http 42} // namespace brillo 43 44#endif // LIBBRILLO_BRILLO_HTTP_MOCK_TRANSPORT_H_ 45