blob: 7f051f5e7e45d0117435ac87cfac57ec4a843a3b [file] [log] [blame]
droger1178c2b2015-06-10 13:05:331// Copyright 2015 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 COMPONENTS_SYNC_DRIVER_FAKE_SYNC_SERVICE_H_
6#define COMPONENTS_SYNC_DRIVER_FAKE_SYNC_SERVICE_H_
7
maxboguefd43b4b92016-09-06 23:09:428#include <memory>
skym9dbfbcf2015-10-09 18:44:339#include <string>
10
maxbogue455a57e32016-08-14 00:08:3211#include "components/sync/driver/sync_service.h"
maxbogue3067278a2016-08-19 23:16:1812#include "components/sync/engine/cycle/sync_cycle_snapshot.h"
droger1178c2b2015-06-10 13:05:3313#include "google_apis/gaia/google_service_auth_error.h"
14
maxbogue617b6882015-08-18 20:33:0315namespace syncer {
16class BaseTransaction;
17struct UserShare;
18}
19
droger1178c2b2015-06-10 13:05:3320namespace sync_driver {
21
22// Fake implementation of sync_driver::SyncService, used for testing.
23class FakeSyncService : public sync_driver::SyncService {
24 public:
25 FakeSyncService();
26 ~FakeSyncService() override;
27
28 private:
29 // sync_driver::SyncService:
maxboguefe00952a2016-01-19 19:02:0130 bool IsFirstSetupComplete() const override;
maxboguee8150cb2015-06-11 22:08:3731 bool IsSyncAllowed() const override;
droger1178c2b2015-06-10 13:05:3332 bool IsSyncActive() const override;
blundellce26a152015-10-26 08:39:1333 void TriggerRefresh(const syncer::ModelTypeSet& types) override;
droger1178c2b2015-06-10 13:05:3334 syncer::ModelTypeSet GetActiveDataTypes() const override;
blundellde2169a2015-10-08 11:43:3335 SyncClient* GetSyncClient() const override;
droger6a118632015-06-23 17:59:4536 void AddObserver(SyncServiceObserver* observer) override;
37 void RemoveObserver(SyncServiceObserver* observer) override;
38 bool HasObserver(const SyncServiceObserver* observer) const override;
sdefresned0c06e192015-06-26 19:38:1239 void OnDataTypeRequestsSyncStartup(syncer::ModelType type) override;
maxbogue96b7d272015-06-16 02:59:5840 bool CanSyncStart() const override;
maxbogue699262c92015-06-19 19:24:5841 void RequestStop(
42 sync_driver::SyncService::SyncStopDataFate data_fate) override;
droger1178c2b2015-06-10 13:05:3343 void RequestStart() override;
44 syncer::ModelTypeSet GetPreferredDataTypes() const override;
45 void OnUserChoseDatatypes(bool sync_everything,
46 syncer::ModelTypeSet chosen_types) override;
maxboguefe00952a2016-01-19 19:02:0147 void SetFirstSetupComplete() override;
maxbogue81abdf22015-09-10 17:40:1948 bool IsFirstSetupInProgress() const override;
tommyclif3a1551e2016-06-21 18:11:2349 std::unique_ptr<SyncSetupInProgressHandle> GetSetupInProgressHandle()
50 override;
maxbogue81abdf22015-09-10 17:40:1951 bool IsSetupInProgress() const override;
droger1178c2b2015-06-10 13:05:3352 bool ConfigurationDone() const override;
53 const GoogleServiceAuthError& GetAuthError() const override;
54 bool HasUnrecoverableError() const override;
maxbogue81abdf22015-09-10 17:40:1955 bool IsBackendInitialized() const override;
maxboguea79d99b72016-09-15 15:59:1656 sync_sessions::OpenTabsUIDelegate* GetOpenTabsUIDelegate() override;
droger1178c2b2015-06-10 13:05:3357 bool IsPassphraseRequiredForDecryption() const override;
58 base::Time GetExplicitPassphraseTime() const override;
59 bool IsUsingSecondaryPassphrase() const override;
60 void EnableEncryptEverything() override;
maxbogue81abdf22015-09-10 17:40:1961 bool IsEncryptEverythingEnabled() const override;
droger1178c2b2015-06-10 13:05:3362 void SetEncryptionPassphrase(const std::string& passphrase,
63 PassphraseType type) override;
64 bool SetDecryptionPassphrase(const std::string& passphrase) override;
maxbogue617b6882015-08-18 20:33:0365 bool IsCryptographerReady(
66 const syncer::BaseTransaction* trans) const override;
67 syncer::UserShare* GetUserShare() const override;
zea9276f212015-08-29 01:35:0368 LocalDeviceInfoProvider* GetLocalDeviceInfoProvider() const override;
69 void RegisterDataTypeController(
maxboguefd43b4b92016-09-06 23:09:4270 std::unique_ptr<sync_driver::DataTypeController> data_type_controller)
71 override;
zea9276f212015-08-29 01:35:0372 void ReenableDatatype(syncer::ModelType type) override;
maxbogue93150a5d2015-08-31 21:08:3273 SyncTokenStatus GetSyncTokenStatus() const override;
74 std::string QuerySyncStatusSummaryString() override;
75 bool QueryDetailedSyncStatus(syncer::SyncStatus* result) override;
76 base::string16 GetLastSyncedTimeString() const override;
77 std::string GetBackendInitializationStateString() const override;
maxbogue3067278a2016-08-19 23:16:1878 syncer::SyncCycleSnapshot GetLastCycleSnapshot() const override;
maxbogue93150a5d2015-08-31 21:08:3279 base::Value* GetTypeStatusMap() const override;
80 const GURL& sync_service_url() const override;
81 std::string unrecoverable_error_message() const override;
82 tracked_objects::Location unrecoverable_error_location() const override;
droger9d18db02015-09-24 12:16:1483 void AddProtocolEventObserver(
84 browser_sync::ProtocolEventObserver* observer) override;
85 void RemoveProtocolEventObserver(
86 browser_sync::ProtocolEventObserver* observer) override;
87 void AddTypeDebugInfoObserver(
88 syncer::TypeDebugInfoObserver* observer) override;
89 void RemoveTypeDebugInfoObserver(
90 syncer::TypeDebugInfoObserver* observer) override;
91 base::WeakPtr<syncer::JsController> GetJsController() override;
dchengb21a1b12016-04-21 19:23:1392 void GetAllNodes(const base::Callback<void(std::unique_ptr<base::ListValue>)>&
droger9d18db02015-09-24 12:16:1493 callback) override;
droger1178c2b2015-06-10 13:05:3394
droger6a118632015-06-23 17:59:4595 // DataTypeEncryptionHandler:
droger1178c2b2015-06-10 13:05:3396 bool IsPassphraseRequired() const override;
97 syncer::ModelTypeSet GetEncryptedDataTypes() const override;
98
99 GoogleServiceAuthError error_;
maxbogue93150a5d2015-08-31 21:08:32100 GURL sync_service_url_;
101 std::string unrecoverable_error_message_;
dchengb21a1b12016-04-21 19:23:13102 std::unique_ptr<syncer::UserShare> user_share_;
droger1178c2b2015-06-10 13:05:33103};
104
105} // namespace sync_driver
106
107#endif // COMPONENTS_SYNC_DRIVER_FAKE_SYNC_SERVICE_H_