public void Should_Set_Value_To_Null_If_Argument_Is_Null() { // Arrange var maybe = new MaybeStruct <BaseStruct>(null); // Act & Assert maybe.HasValue.ShouldBeFalse(); }
public void Should_Set_Value_If_Argument_Is_Not_Null() { // Arrange var baseStruct = new BaseStruct(); var maybe = new MaybeStruct <BaseStruct>(baseStruct); // Act & Assert maybe.HasValue.ShouldBeTrue(); var value = maybe.ValueOrException(nameof(maybe)); value.ShouldBe(baseStruct); }
public void Should_Set_Value_If_SerializationInfo_Contains_Value() { // Arrange var baseStruct = new BaseStruct(); var serializationInfo = new SerializationInfo(typeof(MaybeStruct <>), new FormatterConverter()); serializationInfo.AddValue("value", baseStruct, typeof(BaseStruct)); // Act var maybe = new MaybeStruct <BaseStruct>(serializationInfo, default(StreamingContext)); // Assert maybe.HasValue.ShouldBeTrue(); var value = maybe.ValueOrException(nameof(maybe)); value.ShouldBe(baseStruct); }