public void SetOnceProperty_ConstructAndSetTwice()
 {
     _ = new SetOnceProperty <string>("test", "test")
     {
         Value = "test",
     };
 }
        public void SetOnceProperty_GetWithoutSet()
        {
            var property1 = new SetOnceProperty <string>("test");

            Assert.IsFalse(property1.HasValue);
            Assert.AreEqual("test", property1.Value);
        }
        public void SetOnceProperty_ConstructAndSet()
        {
            var property1 = new SetOnceProperty <string>("test", "test");

            Assert.IsTrue(property1.HasValue);
            Assert.AreEqual("test", property1.Value);
        }
        public void SetOnceProperty_SetTwice()
        {
            var property1 = new SetOnceProperty <string>("test");

            Assert.IsFalse(property1.HasValue);
            property1.Value = "test";
            Assert.IsTrue(property1.HasValue);
            property1.Value = "test";
        }