private static bool PerformTests(string listName, string targetInputAttribute, string targetOutputAttribute, TestCallback callback) { (bool success, XmlNode nodeList)testMatch = XmlManager.GetFirstLevelChild(listName, ref testDocument, "name"); if (testMatch.nodeList.Attributes["run"].Value == "false") { return(true); } bool passed = true; if (testMatch.success) { foreach (XmlNode node in testMatch.nodeList.ChildNodes) { bool success = callback( node.Attributes[targetInputAttribute].Value, node.Attributes[targetOutputAttribute].Value, node.Attributes["debug"].Value == "true" ); passed = success ? passed : false; } } if (!passed) { GUIController.LogOutput($"Test {listName} FAILED"); } return(passed); }