public void TryUpdateState_WhenExecutingTwoTimes_ShouldUpdateStateAndReturnPrevous() { var adapterResponse = GetReadWriteAdapter(); var state = new ComponentState(adapterResponse); var result = state.TryUpdateState(PowerState.StateName, "1", out var old); result = state.TryUpdateState(PowerState.StateName, "0", out old); var value = state.GetStateValues(PowerState.StateName).FirstOrDefault().Value; Assert.IsTrue(result); Assert.AreEqual("1", old); Assert.AreEqual("0", value); }
public void TryUpdateState_ExecutedOnExistingState_ShouldUpdateState() { var adapterResponse = GetReadWriteAdapter(); var state = new ComponentState(adapterResponse); var result = state.TryUpdateState(PowerState.StateName, "1", out var old); var value = state.GetStateValues(PowerState.StateName).FirstOrDefault().Value; Assert.IsTrue(result); Assert.IsNull(old); Assert.AreEqual("1", value); }