public void SerializeTest(SerializeFormat format) { var engine = new NodeEngine(); string stream = null; engine.GetOrCreateNode("Node1") .SetColor(Colors.Coral) .SetPos(150, 200); engine.GetOrCreateNode("Node2"); engine.Connect("Node1", "Node2"); stream = engine.Serialize(format); var engine2 = new NodeEngine(); engine2.Deserialize(stream, format); Assert.Equal(engine.Network.Nodes[0].Guid, engine2.Network.Nodes[0].Guid); Assert.Equal(engine.Network.Nodes[0].Y, engine2.Network.Nodes[0].Y); Assert.Equal(engine.Network.Nodes[0].HeaderColor, engine2.Network.Nodes[0].HeaderColor); Assert.Equal(engine.Network.Nodes.Count, engine2.Network.Nodes.Count); Assert.Equal(engine.Network.Connections.Count, engine2.Network.Connections.Count); Assert.Equal(engine.Network.Nodes.SelectMany(x => x.InputPlugs).Count(), engine2.Network.Nodes.SelectMany(x => x.InputPlugs).Count()); Assert.Equal(engine.Network.Nodes.SelectMany(x => x.OutputPlugs).Count(), engine2.Network.Nodes.SelectMany(x => x.OutputPlugs).Count()); }