public void DeserializeConstructor_InitializesFromSerializationInfo() { // Arrange var node = MockNode(); var expected = new SerializedNode<INode>(node); var info = new SerializationInfo(expected.GetType(), MockFormatterConverter()); expected.GetObjectData(info, new StreamingContext()); // Act var actual = new SerializedNode<INode>(info, new StreamingContext()); // Assert Assert.Equal(expected.NodeType, actual.NodeType); Assert.Equal(expected.Node, actual.Node); }
public void GetObjectData_SetsEnoughSerializationInfoToDeserialize() { // Arrange var node = MockNode(); var expected = new SerializedNode<INode>(node); var info = new SerializationInfo(expected.GetType(), MockFormatterConverter()); // Act expected.GetObjectData(info, new StreamingContext()); // Assert var actualNode = info.GetValue(nameof(expected.Node), expected.Node.GetType()); var actualNodeType = (Type)info.GetValue(nameof(expected.NodeType), typeof(Type)); Assert.Equal(expected.Node, actualNode); Assert.Equal(expected.NodeType, actualNodeType); }