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