private List<Conditional> TestConditionals(ControlFlowGraph graph, params string[] args) { graph.SortByDepthFirstPostOrder(); graph.StructureLoops(); var conditionals = graph.StructureConditionals(); const string fmt = "{0}: {1}"; var lines = conditionals.Select((x, i) => { var str = string.Format(fmt, i, x); Console.WriteLine(str); return str; }).ToArray(); Assert.AreEqual(conditionals.Count, args.Length); for (int i = 0; i < args.Length; i++) { var expected = args[i]; var actual = lines[i]; Assert.AreEqual(expected, actual); } return conditionals; }