293 result_log = nil; |
293 result_log = nil; |
294 end |
294 end |
295 end |
295 end |
296 end; |
296 end; |
297 |
297 |
298 local function run_test_script(script_name, script_text) |
298 local function run_test_script(script_name, script_text, log_data) |
299 local script = parse_script(script_text) |
299 local script = parse_script(script_text) |
300 local script_data = { title = script.title, summary = script.summary, tags = script.tags, filename = script_name }; |
300 local script_data = { title = script.title, summary = script.summary, tags = script.tags, filename = script_name }; |
301 |
301 |
302 local tags = script.tags or {}; |
302 local tags = script.tags or {}; |
303 if skip_tags then |
303 if skip_tags then |
358 local result_tally = { all = {} }; |
358 local result_tally = { all = {} }; |
359 |
359 |
360 assert(#files > 0, "No test script provided"); |
360 assert(#files > 0, "No test script provided"); |
361 for i = 1, #files do |
361 for i = 1, #files do |
362 local script_text = read_script(files[i]); |
362 local script_text = read_script(files[i]); |
363 local ret = run_test_script(files[i], script_text); |
363 local ret = run_test_script(files[i], script_text, log_data); |
364 if not result_tally[ret.status] then |
364 if not result_tally[ret.status] then |
365 result_tally[ret.status] = {}; |
365 result_tally[ret.status] = {}; |
366 end |
366 end |
367 table.insert(result_tally[ret.status], ret); |
367 table.insert(result_tally[ret.status], ret); |
368 table.insert(result_tally.all, ret); |
368 table.insert(result_tally.all, ret); |