public void SimpleTest() { var nodes = new List <Node> (); nodes.Add(new TemporaryNode()); nodes.Add(new TemporaryNode()); nodes.Add(new TemporaryNode()); nodes.Add(new TemporaryNode()); nodes.Add(Target.R10); var node = new ConditionalJumpNode(nodes [0], new ConditionalJumpNode(nodes [1], nodes [2], nodes [3]), nodes [4]); Console.WriteLine(node); var trace = new HashSet <Node> (TraceBuilder.BuildTrace(node)); bool fine = true; foreach (Node n in trace) { fine &= !(n is ConditionalJumpNode); } fine &= trace.Contains(nodes [2]); fine &= trace.Contains(nodes [3]); fine &= trace.Contains(nodes [4]); Assert.IsTrue(fine); }