public void Store_WithStateStateWithOptions_OptionsShouldEqualInput() { FileStateStore store = GetStateStore(); var testState = new StorableMaintenanceState(); StorableOption testOption = new StorableOption { StringValue = "test", TypeName = "testType" }; testState.MiddlewareOptions = new List <StorableOption> { testOption }; store.SetState(testState); store.GetState().MiddlewareOptions .ShouldNotBeNull() .ShouldNotBeEmpty(); StorableOption firstOption = store.GetState() .MiddlewareOptions.First(); firstOption.StringValue .ShouldBe(testOption.StringValue); firstOption.TypeName .ShouldBe(testOption.TypeName); }
public void SetState(StorableMaintenanceState state) { string filePath = GetFileFullPath(); string serialized = JsonSerializer.Serialize(state, new JsonSerializerOptions { WriteIndented = true }); IO.File.WriteAllText(filePath, serialized); }
public void Store_WithStateStateWithDate_DateShouldEqualInput() { FileStateStore store = GetStateStore(); var testState = new StorableMaintenanceState { ExpirationDate = DateTime.Now }; store.SetState(testState); store.GetState().ExpirationDate .ShouldBe(testState.ExpirationDate); }
public void Store_WithStateState_StateShouldEqualInput(bool isOn) { FileStateStore store = GetStateStore(); var testState = new StorableMaintenanceState { IsMaintenanceOn = isOn }; store.SetState(testState); store.GetState().IsMaintenanceOn .ShouldBe(isOn); }
private void StoreState() { StorableMaintenanceState storableState = new StorableMaintenanceState { ExpirationDate = _state.ExpirationDate, IsMaintenanceOn = _state.IsMaintenanceOn }; IMiddlewareOptionsContainer optionsContainer = _state; storableState.MiddlewareOptions = optionsContainer.MiddlewareOptions ?.GetAll <ISerializableOption>() .Select(o => new StorableOption { StringValue = o.GetStringValue(), TypeName = o.TypeName }) .ToList(); _stateStore.SetState(storableState); }
private void RestoreState() { StorableMaintenanceState restored = _stateStore.GetState(); if (restored != null) { OptionCollection restoredOptions = null; if (restored.MiddlewareOptions != null) { restoredOptions = new OptionCollection( restored.MiddlewareOptions .Select(o => RestoreOption(o))); } _state = new MaintenanceState(restored.ExpirationDate, restored.IsMaintenanceOn, restoredOptions); } else { _state = new MaintenanceState(); } }
public void SetState(StorableMaintenanceState state) { _state = state ?? throw new ArgumentNullException(nameof(state)); }