public void Test_Clear_Value() { // Arrange string result = "Initial value"; var lazy = new SyncLazy <string>(() => result); var initialValue = lazy.Value; Assert.AreEqual(result, initialValue); result = "Modified value"; // Act lazy.ClearValue(); // Assert Assert.IsFalse(lazy.IsValueCreated); var value = lazy.Value; Assert.AreEqual(result, value); Assert.IsTrue(lazy.IsValueCreated); }