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 COMPONENTS_SYNC_TEST_ENGINE_FAKE_SYNC_SCHEDULER_H_ 6 #define COMPONENTS_SYNC_TEST_ENGINE_FAKE_SYNC_SCHEDULER_H_ 7 8 #include <map> 9 #include <memory> 10 11 #include "components/sync/engine_impl/sync_scheduler.h" 12 13 namespace syncer { 14 15 // A fake implementation of the SyncScheduler. If needed, we should add default 16 // logic needed for tests (invoking callbacks, etc) here rather than in higher 17 // level test classes. 18 class FakeSyncScheduler : public SyncScheduler { 19 public: 20 FakeSyncScheduler(); 21 ~FakeSyncScheduler() override; 22 23 void Start(Mode mode, base::Time last_poll_time) override; 24 void Stop() override; 25 void ScheduleLocalNudge(ModelTypeSet types, 26 const base::Location& nudge_location) override; 27 void ScheduleLocalRefreshRequest( 28 ModelTypeSet types, 29 const base::Location& nudge_location) override; 30 void ScheduleInvalidationNudge( 31 ModelType type, 32 std::unique_ptr<InvalidationInterface> interface, 33 const base::Location& nudge_location) override; 34 void ScheduleConfiguration(ConfigurationParams params) override; 35 36 void ScheduleInitialSyncNudge(ModelType model_type) override; 37 void SetNotificationsEnabled(bool notifications_enabled) override; 38 39 void OnCredentialsUpdated() override; 40 void OnConnectionStatusChange(network::mojom::ConnectionType type) override; 41 42 // SyncCycle::Delegate implementation. 43 void OnThrottled(const base::TimeDelta& throttle_duration) override; 44 void OnTypesThrottled(ModelTypeSet types, 45 const base::TimeDelta& throttle_duration) override; 46 void OnTypesBackedOff(ModelTypeSet types) override; 47 bool IsAnyThrottleOrBackoff() override; 48 void OnReceivedPollIntervalUpdate( 49 const base::TimeDelta& new_interval) override; 50 void OnReceivedCustomNudgeDelays( 51 const std::map<ModelType, base::TimeDelta>& nudge_delays) override; 52 void OnReceivedClientInvalidationHintBufferSize(int size) override; 53 void OnSyncProtocolError(const SyncProtocolError& error) override; 54 void OnReceivedGuRetryDelay(const base::TimeDelta& delay) override; 55 void OnReceivedMigrationRequest(ModelTypeSet types) override; 56 }; 57 58 } // namespace syncer 59 60 #endif // COMPONENTS_SYNC_TEST_ENGINE_FAKE_SYNC_SCHEDULER_H_ 61