13f50c38dc070f4bb515c1b64450dae14f316474eKristian Monsen// Copyright (c) 2011 The Chromium Authors. All rights reserved.
2c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch// Use of this source code is governed by a BSD-style license that can be
3c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch// found in the LICENSE file.
4c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch
5c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch#ifndef CHROME_BROWSER_SYNC_GLUE_DATA_TYPE_CONTROLLER_MOCK_H__
6c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch#define CHROME_BROWSER_SYNC_GLUE_DATA_TYPE_CONTROLLER_MOCK_H__
73345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick#pragma once
8c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch
9c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch#include "chrome/browser/sync/glue/data_type_controller.h"
10c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch#include "testing/gmock/include/gmock/gmock.h"
11c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch
12c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdochnamespace browser_sync {
13c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch
14c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdochclass DataTypeControllerMock : public DataTypeController {
15c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch public:
163f50c38dc070f4bb515c1b64450dae14f316474eKristian Monsen  DataTypeControllerMock();
173f50c38dc070f4bb515c1b64450dae14f316474eKristian Monsen  virtual ~DataTypeControllerMock();
183f50c38dc070f4bb515c1b64450dae14f316474eKristian Monsen
19c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch  MOCK_METHOD1(Start, void(StartCallback* start_callback));
20c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch  MOCK_METHOD0(Stop, void());
21c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch  MOCK_METHOD0(enabled, bool());
22ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen  MOCK_CONST_METHOD0(type, syncable::ModelType());
23ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen  MOCK_CONST_METHOD0(name, std::string());
24ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen  MOCK_CONST_METHOD0(model_safe_group, browser_sync::ModelSafeGroup());
25ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen  MOCK_CONST_METHOD0(state, State());
26c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch  MOCK_METHOD2(OnUnrecoverableError, void(const tracked_objects::Location&,
27c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch                                          const std::string&));
28c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch};
29c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch
30c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch}  // namespace browser_sync
31c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch
32c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch#endif  // CHROME_BROWSER_SYNC_GLUE_DATA_TYPE_CONTROLLER_MOCK_H__
33