public void Test_Writing_A_Primitive <T>(PrimitiveTypeTestCaseData <T> testCaseData) where T : struct { IDataNode node = new PrimitiveTypeDataNode <T>(); node.Write(binaryWriter, testCaseData.Value); testCaseData.VerifyWrite(binaryWriter); }
public void Test_Writing_With_A_Null_BinaryWriter <T>(PrimitiveTypeTestCaseData <T> testCaseData) where T : struct { IDataNode node = new PrimitiveTypeDataNode <T>(); Action action = () => node.Write(null, testCaseData.Value); action.Should() .ThrowArgumentNullException("binaryWriter"); }
public void Test_Writing_With_Value_Of_The_Incorrect_Type <T>(PrimitiveTypeTestCaseData <T> testCaseData) where T : struct { IDataNode node = new PrimitiveTypeDataNode <T>(); object value = new object(); Action action = () => node.Write(binaryWriter, value); action.Should() .ThrowExactly <ArgumentException>() .WithMessage($"Cannot write value of type {value.GetType().Name} as type {typeof(T).Name}."); }