From f44442e5e93a96c84ac4c9547601bfb98ab6c753 Mon Sep 17 00:00:00 2001 From: lethosor Date: Fri, 9 Apr 2021 00:50:06 -0400 Subject: [PATCH] Use mock.patch() in ci/test.lua Other tests that could benefit are currently only in the scripts repo. --- ci/test.lua | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/ci/test.lua b/ci/test.lua index 706560351..1980ddc6f 100644 --- a/ci/test.lua +++ b/ci/test.lua @@ -281,19 +281,20 @@ local function sort_tests(tests) end local function wrap_test(func) - local saved_printerr, saved_run_script = dfhack.printerr, dfhack.run_script + local saved_printerr = dfhack.printerr local printerr_called = false - dfhack.printerr = function(msg) - if msg == nil then return end - saved_printerr(msg) - printerr_called = true - end - dfhack.run_script = clean_run_script - return dfhack.with_finalize( - function() - dfhack.printerr = saved_printerr - dfhack.run_script = saved_run_script - end, + local printerr_wrapper = function(msg) + if msg == nil then return end + saved_printerr(msg) + printerr_called = true + end + + return mock.patch( + { + {dfhack, 'printerr', printerr_wrapper}, + {dfhack, 'run_script', clean_run_script}, + {dfhack, 'reqscript', clean_reqscript}, + }, function() local ok, err = pcall(func) if printerr_called then