public void ValueDisplayValue_ChangeFromValidToInvalidValue_SetsDisplayValueToInvlaidValueAndValueRemainsUnChanged() { var vm = new TestVM(); decimal?validValue = 1; vm.SetValue(x => x.Value, validValue); Assert.AreEqual(validValue, vm.GetValidatedValue()); Assert.AreEqual(validValue, vm.GetDisplayValue()); decimal?invalidValue = 2; vm.InvalidateValue = true; vm.SetDisplayValue(invalidValue); Assert.AreEqual(validValue, vm.GetValidatedValue()); Assert.AreEqual(invalidValue, vm.GetDisplayValue()); }