is_class_test = function(tuple) return tuple[0].indexOf("Test") != null and typeof(tuple[1]) == "list" end function test_classes = select(to_list(globals), @is_class_test) tests_table = [] convert_to_table = function(list) struct = {} class_name = list[0] functions = to_map(list[1]) setup = functions["setup"] functions.remove("setup") tests = functions for i in tests.indexes tests_table.push({"class_name": class_name, "setup": @setup, "test_name": i, "test_function": tests[i]}) end for end function test_classes = each(test_classes, @convert_to_table) for test in tests_table MiniManager.set_running_test(test) if test["setup"] != null then test["setup"]() end if test["test_function"]() end for