blob: 637f32aed2fd68d5abe26e22ac84f2f4484e4f33 [file] [log] [blame]
Chris Masone9be4a9d2011-05-16 15:44:09 -07001// Copyright (c) 2011 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 SHILL_MOCK_DEVICE_
6#define SHILL_MOCK_DEVICE_
7
8#include <base/memory/ref_counted.h>
9#include <gmock/gmock.h>
10
11#include "shill/device.h"
12
13namespace shill {
14
15class ControlInterface;
16class EventDispatcher;
17
18using ::testing::_;
19using ::testing::Return;
20
21class MockDevice : public Device {
22 public:
23 // A constructor for the Device object
24 MockDevice(ControlInterface *control_interface,
25 EventDispatcher *dispatcher)
26 : Device(control_interface, dispatcher) {
27 ON_CALL(*this, TechnologyIs(_)).WillByDefault(Return(false));
28 }
29 virtual ~MockDevice() {}
30
31 MOCK_METHOD0(Start, void(void));
32 MOCK_METHOD0(Stop, void(void));
33 MOCK_METHOD1(TechnologyIs, bool(Technology));
34
35 private:
36 DISALLOW_COPY_AND_ASSIGN(MockDevice);
37};
38
39} // namespace shill
40
41#endif // SHILL_MOCK_DEVICE_