1// Copyright (c) 2012 The Chromium 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 CHROMEOS_DBUS_MOCK_SHILL_PROFILE_CLIENT_H_
6#define CHROMEOS_DBUS_MOCK_SHILL_PROFILE_CLIENT_H_
7
8#include "base/values.h"
9#include "chromeos/dbus/shill_profile_client.h"
10#include "chromeos/dbus/shill_property_changed_observer.h"
11#include "dbus/object_path.h"
12#include "testing/gmock/include/gmock/gmock.h"
13
14namespace chromeos {
15
16class ShillPropertyChangedObserver;
17
18class MockShillProfileClient : public ShillProfileClient {
19 public:
20  MockShillProfileClient();
21  virtual ~MockShillProfileClient();
22
23  MOCK_METHOD2(AddPropertyChangedObserver,
24               void(const dbus::ObjectPath& profile_path,
25                    ShillPropertyChangedObserver* observer));
26  MOCK_METHOD2(RemovePropertyChangedObserver,
27               void(const dbus::ObjectPath& profile_path,
28                    ShillPropertyChangedObserver* observer));
29  MOCK_METHOD3(GetProperties, void(
30      const dbus::ObjectPath& profile_path,
31      const DictionaryValueCallbackWithoutStatus& callback,
32      const ErrorCallback& error_callback));
33  MOCK_METHOD4(GetEntry, void(
34      const dbus::ObjectPath& profile_path,
35      const std::string& entry_path,
36      const DictionaryValueCallbackWithoutStatus& callback,
37      const ErrorCallback& error_callback));
38  MOCK_METHOD4(DeleteEntry, void(const dbus::ObjectPath& profile_path,
39                                 const std::string& entry_path,
40                                 const base::Closure& callback,
41                                 const ErrorCallback& error_callback));
42  MOCK_METHOD0(GetTestInterface, TestInterface*());
43};
44
45}  // namespace chromeos
46
47#endif  // CHROMEOS_DBUS_MOCK_SHILL_PROFILE_CLIENT_H_
48