public void TestGraphWithEnumNode() { Node rootNode = new Node(1); Node intNode = new Node(42); Node enumNode = new Node(TestEnum.Two); rootNode.Nodes.Add(intNode); rootNode.Nodes.Add(enumNode); intNode.Nodes.Add(rootNode); Graph g = new Graph(rootNode); XmlSerializer s = new XmlSerializer(); string result = s.Serialize(g); XmlDeserializer d = new XmlDeserializer(); Graph newGraph = d.Deserialize<Graph>(result); Assert.IsNotNull(newGraph); Assert.AreEqual(g.Root.Data, newGraph.Root.Data); Assert.AreEqual(g.Root.Nodes[0].Data, newGraph.Root.Nodes[0].Data); Assert.AreEqual(g.Root.Nodes[1].Data, newGraph.Root.Nodes[1].Data); Assert.AreEqual(g.Root.Nodes[0].Nodes[0].Data, newGraph.Root.Nodes[0].Nodes[0].Data); Assert.AreSame(newGraph.Root, newGraph.Root.Nodes[0].Nodes[0]); }
public void TestGraphWithStringNode() { Node rootNode = new Node(1); Node intNode = new Node(42); Node stringNode = new Node("test string with <invalid> characters!"); rootNode.Nodes.Add(intNode); rootNode.Nodes.Add(stringNode); intNode.Nodes.Add(rootNode); Graph g = new Graph(rootNode); XmlSerializer s = new XmlSerializer(); string result = s.Serialize(g); XmlDeserializer d = new XmlDeserializer(); Graph newGraph = d.Deserialize<Graph>(result); Assert.IsNotNull(newGraph); Assert.AreEqual(g.Root.Data, newGraph.Root.Data); Assert.AreEqual(g.Root.Nodes[0].Data, newGraph.Root.Nodes[0].Data); Assert.AreEqual(g.Root.Nodes[1].Data, newGraph.Root.Nodes[1].Data); Assert.AreEqual(g.Root.Nodes[0].Nodes[0].Data, newGraph.Root.Nodes[0].Nodes[0].Data); Assert.AreSame(newGraph.Root, newGraph.Root.Nodes[0].Nodes[0]); }
public void TestSimpleGraph() { var rootNode = new Node(1); var intNode = new Node(42); rootNode.Nodes.Add(intNode); intNode.Nodes.Add(rootNode); var g = new Graph(rootNode); var s = new XmlSerializer(); var result = s.Serialize(g); var d = new XmlDeserializer(); var newGraph = d.Deserialize<Graph>(result); Assert.IsNotNull(newGraph); Assert.AreEqual(g.Root.Data, newGraph.Root.Data); Assert.AreEqual(g.Root.Nodes[0].Data, newGraph.Root.Nodes[0].Data); Assert.AreEqual(g.Root.Nodes[0].Nodes[0].Data, newGraph.Root.Nodes[0].Nodes[0].Data); Assert.AreSame(newGraph.Root, newGraph.Root.Nodes[0].Nodes[0]); }
public Graph(Node root) { Root = root; }