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 CHROME_BROWSER_SYNC_GLUE_FRONTEND_DATA_TYPE_CONTROLLER_MOCK_H__ 6#define CHROME_BROWSER_SYNC_GLUE_FRONTEND_DATA_TYPE_CONTROLLER_MOCK_H__ 7 8#include "chrome/browser/sync/glue/frontend_data_type_controller.h" 9#include "sync/api/sync_error.h" 10#include "testing/gmock/include/gmock/gmock.h" 11 12namespace browser_sync { 13 14class FrontendDataTypeControllerMock : public FrontendDataTypeController { 15 public: 16 FrontendDataTypeControllerMock(); 17 18 // DataTypeController mocks. 19 MOCK_METHOD1(StartAssociating, 20 void(const StartCallback& start_callback)); 21 MOCK_METHOD1(LoadModels, void(const ModelLoadCallback& model_load_callback)); 22 MOCK_METHOD0(OnModelLoaded, void()); 23 24 MOCK_METHOD0(Stop, void()); 25 MOCK_METHOD0(enabled, bool()); 26 MOCK_CONST_METHOD0(type, syncer::ModelType()); 27 MOCK_CONST_METHOD0(name, std::string()); 28 MOCK_CONST_METHOD0(model_safe_group, syncer::ModelSafeGroup()); 29 MOCK_CONST_METHOD0(state, State()); 30 MOCK_METHOD2(OnUnrecoverableError, void(const tracked_objects::Location&, 31 const std::string&)); 32 33 // FrontendDataTypeController mocks. 34 MOCK_METHOD0(StartModels, bool()); 35 MOCK_METHOD0(Associate, bool()); 36 MOCK_METHOD0(CreateSyncComponents, void()); 37 MOCK_METHOD2(StartFailed, void(ConfigureResult result, 38 const syncer::SyncError& error)); 39 MOCK_METHOD1(FinishStart, void(ConfigureResult result)); 40 MOCK_METHOD0(CleanUpState, void()); 41 MOCK_CONST_METHOD0(model_associator, sync_driver::AssociatorInterface*()); 42 MOCK_METHOD1(set_model_associator, 43 void(sync_driver::AssociatorInterface* associator)); 44 MOCK_CONST_METHOD0(change_processor, sync_driver::ChangeProcessor*()); 45 MOCK_METHOD1(set_change_processor, 46 void(sync_driver::ChangeProcessor* processor)); 47 MOCK_METHOD2(RecordUnrecoverableError, void(const tracked_objects::Location&, 48 const std::string&)); 49 MOCK_METHOD1(RecordAssociationTime, void(base::TimeDelta time)); 50 MOCK_METHOD1(RecordStartFailure, void(ConfigureResult result)); 51 52 protected: 53 virtual ~FrontendDataTypeControllerMock(); 54}; 55 56} // namespace browser_sync 57 58#endif // CHROME_BROWSER_SYNC_GLUE_FRONTEND_DATA_TYPE_CONTROLLER_MOCK_H__ 59