blob: dbbc73170072d4e28512b77d88b376dc6075ff81 [file] [log] [blame]
Peter Qiufb39ba42014-11-21 09:09:59 -08001// 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 APMANAGER_MOCK_MANAGER_H_
6#define APMANAGER_MOCK_MANAGER_H_
7
8#include <string>
9
10#include <base/macros.h>
11#include <gmock/gmock.h>
12
13#include "apmanager/manager.h"
14
15namespace apmanager {
16
17class MockManager : public Manager {
18 public:
19 MockManager();
20 ~MockManager() override;
21
22 MOCK_METHOD0(Start, void());
23 MOCK_METHOD0(Stop, void());
24 MOCK_METHOD1(RegisterDevice, void(scoped_refptr<Device> device));
25 MOCK_METHOD0(GetAvailableDevice, scoped_refptr<Device>());
26 MOCK_METHOD1(GetDeviceFromInterfaceName,
27 scoped_refptr<Device>(const std::string& interface_name));
Peter Qiu7e0ffcf2014-12-02 12:53:27 -080028 MOCK_METHOD1(ClaimInterface, void(const std::string& interface_name));
29 MOCK_METHOD1(ReleaseInterface, void(const std::string& interface_name));
Peter Qiu943cf3a2015-02-24 10:59:17 -080030 MOCK_METHOD1(RequestDHCPPortAccess, void(const std::string& interface));
31 MOCK_METHOD1(ReleaseDHCPPortAccess, void(const std::string& interface));
Peter Qiufb39ba42014-11-21 09:09:59 -080032
33 private:
34 DISALLOW_COPY_AND_ASSIGN(MockManager);
35};
36
37} // namespace apmanager
38
39#endif // APMANAGER_MOCK_MANAGER_H_