1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62
|
// Copyright 2015 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef COMPONENTS_SYNC_DRIVER_FAKE_SYNC_CLIENT_H_
#define COMPONENTS_SYNC_DRIVER_FAKE_SYNC_CLIENT_H_
#include <memory>
#include "base/macros.h"
#include "components/sync/driver/sync_client.h"
#include "components/sync_preferences/testing_pref_service_syncable.h"
namespace syncer {
class FakeSyncService;
// Fake implementation of SyncClient interface for tests.
class FakeSyncClient : public SyncClient {
public:
FakeSyncClient();
explicit FakeSyncClient(SyncApiComponentFactory* factory);
~FakeSyncClient() override;
void Initialize() override;
SyncService* GetSyncService() override;
PrefService* GetPrefService() override;
bookmarks::BookmarkModel* GetBookmarkModel() override;
favicon::FaviconService* GetFaviconService() override;
history::HistoryService* GetHistoryService() override;
bool HasPasswordStore() override;
base::Closure GetPasswordStateChangedCallback() override;
SyncApiComponentFactory::RegisterDataTypesMethod
GetRegisterPlatformTypesCallback() override;
autofill::PersonalDataManager* GetPersonalDataManager() override;
BookmarkUndoService* GetBookmarkUndoServiceIfExists() override;
invalidation::InvalidationService* GetInvalidationService() override;
scoped_refptr<ExtensionsActivity> GetExtensionsActivity() override;
sync_sessions::SyncSessionsClient* GetSyncSessionsClient() override;
base::WeakPtr<SyncableService> GetSyncableServiceForType(
ModelType type) override;
base::WeakPtr<ModelTypeSyncBridge> GetSyncBridgeForModelType(
ModelType type) override;
scoped_refptr<ModelSafeWorker> CreateModelWorkerForGroup(
ModelSafeGroup group) override;
SyncApiComponentFactory* GetSyncApiComponentFactory() override;
void SetModelTypeSyncBridge(ModelTypeSyncBridge* bridge);
private:
sync_preferences::TestingPrefServiceSyncable pref_service_;
ModelTypeSyncBridge* bridge_;
SyncApiComponentFactory* factory_;
std::unique_ptr<FakeSyncService> sync_service_;
DISALLOW_COPY_AND_ASSIGN(FakeSyncClient);
};
} // namespace syncer
#endif // COMPONENTS_SYNC_DRIVER_FAKE_SYNC_CLIENT_H_
|