public void Sync_ShouldSet_AutoStartup_Enabled(bool value) { _appSettings.StartOnStartup.Returns(value); _autoStartup.Enabled.Returns(value); var startup = new SyncableAutoStartup(_appSettings, _scheduler, _autoStartup); startup.Sync(); _autoStartup.Received(1).Enabled = value; }
public void Sync_ShouldSchedule_SyncBack_WhenSyncFails() { _appSettings.StartOnStartup.Returns(true); _autoStartup.Enabled.Returns(false); _autoStartup.When(x => x.Enabled = Arg.Any <bool>()).Do(x => { _autoStartup.Enabled.Returns(false); }); var startup = new SyncableAutoStartup(_appSettings, _scheduler, _autoStartup); startup.Sync(); _appSettings.DidNotReceive().StartOnStartup = Arg.Any <bool>(); _scheduler.Received(1).Schedule(Arg.Any <Action>()); }
public void Sync_ShouldSet_AllSettings_StartOnStartup_WhenSyncFailed() { Action syncBack = null; _appSettings.StartOnStartup.Returns(true); _autoStartup.Enabled.Returns(false); _autoStartup.When(x => x.Enabled = Arg.Any <bool>()).Do(x => { _autoStartup.Enabled.Returns(false); }); _scheduler.When(x => x.Schedule(Arg.Any <Action>())).Do(x => syncBack = x.Arg <Action>()); var startup = new SyncableAutoStartup(_appSettings, _scheduler, _autoStartup); startup.Sync(); syncBack(); _appSettings.Received(1).StartOnStartup = false; }