public void IsLockedIsTrueAfterTheValuePropertyIsAccessed() { var semimutable = new Semimutable <int>(1); _ = semimutable.Value; Assert.True(semimutable.IsLocked); }
public void HasDefaultValueIsFalseWhenSetValueIsCalled() { var semimutable = new Semimutable <int>(1); semimutable.SetValue(() => 2); Assert.False(semimutable.HasDefaultValue); }
public void CanChangeValuePropertyWithTheSetValueMethod() { var semimutable = new Semimutable <int>(1); semimutable.SetValue(() => 2); Assert.Equal(2, semimutable.Value); }
public void HasDefaultValueIsFalseWhenValueIsChanged() { var semimutable = new Semimutable <int>(1); semimutable.Value = 2; Assert.False(semimutable.HasDefaultValue); }
public void CanChangeValueProperty() { var semimutable = new Semimutable <int>(1); semimutable.Value = 2; Assert.Equal(2, semimutable.Value); }
public void CallingTheResetValueMethodThrowsWhenIsLockedIsTrue() { var semimutable = new Semimutable <int>(1); semimutable.LockValue(); Assert.Throws <InvalidOperationException>(() => semimutable.ResetValue()); }
public void SettingTheValuePropertyThrowsWhenIsLockedIsTrue() { var semimutable = new Semimutable <int>(1); semimutable.LockValue(); Assert.Throws <InvalidOperationException>(() => semimutable.Value = 2); }
public void IsLockedIsTrueAfterLockValueIsCalled() { var semimutable = new Semimutable <int>(1); semimutable.LockValue(); Assert.True(semimutable.IsLocked); }
public void HasDefaultValueIsTrueWhenResetValueIsCalled() { var semimutable = new Semimutable <int>(1); semimutable.Value = 2; semimutable.ResetValue(); Assert.True(semimutable.HasDefaultValue); }
public void ResetChangesValueBackToDefault() { var semimutable = new Semimutable <int>(1); semimutable.Value = 2; semimutable.ResetValue(); Assert.True(semimutable.HasDefaultValue); }
public void InvokingTheMethodReturnedFromGetUnlockMethodUnlocksTheValue() { var semimutable = new Semimutable <int>(1); semimutable.LockValue(); var unlockValue = semimutable.GetUnlockValueMethod(); unlockValue.Invoke(semimutable, null); Assert.False(semimutable.IsLocked); semimutable.Value = 2; Assert.Equal(2, semimutable.Value); }
public void IsLockedIsFalseInitially() { var semimutable = new Semimutable <int>(1); Assert.False(semimutable.IsLocked); }
public void DefaultValueIsUsedWhenValueIsNotChanged() { var semimutable = new Semimutable <int>(1); Assert.Equal(1, semimutable.Value); }
public void HasDefaultValueIsTrueWhenValueIsNotChanged() { var semimutable = new Semimutable <int>(1); Assert.True(semimutable.HasDefaultValue); }