示例#1
0
        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);
        }
示例#2
0
        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);
        }