13551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)// Copyright 2013 The Chromium Authors. All rights reserved.
23551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
33551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)// found in the LICENSE file.
43551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
53551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#ifndef NET_TOOLS_FLIP_SERVER_FLIP_TEST_UTILS_H_
63551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#define NET_TOOLS_FLIP_SERVER_FLIP_TEST_UTILS_H_
73551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
83551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#include <string>
93551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
103551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#include "net/tools/flip_server/sm_interface.h"
113551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#include "testing/gmock/include/gmock/gmock.h"
123551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#include "testing/gtest/include/gtest/gtest.h"
133551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
143551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)namespace net {
153551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
163551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)class MockSMInterface : public SMInterface {
173551c9c881056c480085172ff9840cab31610854Torne (Richard Coles) public:
183551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MockSMInterface();
193551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  virtual ~MockSMInterface();
203551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
213551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MOCK_METHOD2(InitSMInterface, void(SMInterface*, int32));
22a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  MOCK_METHOD8(InitSMConnection,
23a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)               void(SMConnectionPoolInterface*,
24a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                    SMInterface*,
25a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                    EpollServer*,
26a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                    int,
27a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                    std::string,
28a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                    std::string,
29a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                    std::string,
30a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                    bool));
313551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MOCK_METHOD2(ProcessReadInput, size_t(const char*, size_t));
323551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MOCK_METHOD2(ProcessWriteInput, size_t(const char*, size_t));
333551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MOCK_METHOD1(SetStreamID, void(uint32 stream_id));
343551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MOCK_CONST_METHOD0(MessageFullyRead, bool());
353551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MOCK_CONST_METHOD0(Error, bool());
363551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MOCK_CONST_METHOD0(ErrorAsString, const char*());
373551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MOCK_METHOD0(Reset, void());
383551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MOCK_METHOD1(ResetForNewInterface, void(int32 server_idx));
393551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MOCK_METHOD0(ResetForNewConnection, void());
403551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MOCK_METHOD0(Cleanup, void());
413551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MOCK_METHOD0(PostAcceptHook, int());
423551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MOCK_METHOD3(NewStream, void(uint32, uint32, const std::string&));
433551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MOCK_METHOD1(SendEOF, void(uint32 stream_id));
443551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MOCK_METHOD1(SendErrorNotFound, void(uint32 stream_id));
453551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MOCK_METHOD2(SendSynStream, size_t(uint32, const BalsaHeaders&));
463551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MOCK_METHOD2(SendSynReply, size_t(uint32, const BalsaHeaders&));
473551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MOCK_METHOD5(SendDataFrame, void(uint32, const char*, int64, uint32, bool));
483551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MOCK_METHOD0(GetOutput, void());
493551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  MOCK_METHOD0(set_is_request, void());
503551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)};
513551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
523551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)}  // namespace net
533551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
543551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#endif  // NET_TOOLS_FLIP_SERVER_FLIP_TEST_UTILS_H_
55