diff options
Diffstat (limited to 'tests/helpers/lua/test_helpers.lua')
| -rw-r--r-- | tests/helpers/lua/test_helpers.lua | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/helpers/lua/test_helpers.lua b/tests/helpers/lua/test_helpers.lua index f11765d5..8a69ead8 100644 --- a/tests/helpers/lua/test_helpers.lua +++ b/tests/helpers/lua/test_helpers.lua @@ -2,7 +2,9 @@ local util = require "luassert.util" local spy = require "luassert.spy" +local path = require "mason-core.path" local a = require "mason-core.async" +local Result = require "mason-core.result" local InstallHandle = require "mason-core.installer.handle" local InstallContext = require "mason-core.installer.context" local registry = require "mason-registry" @@ -32,6 +34,21 @@ mockx = { end, } +---@param opts? PackageInstallOpts +function create_dummy_context(opts) + local ctx = InstallContextGenerator(InstallHandleGenerator "registry", opts) + ctx.cwd:set(path.package_build_prefix "registry") + ctx.spawn = setmetatable({}, { + __index = function(s, cmd) + s[cmd] = spy.new(function() + return Result.success { stdout = nil, stderr = nil } + end) + return s[cmd] + end, + }) + return ctx +end + -- selene: allow(unused_variable) ---@param package_name string function InstallHandleGenerator(package_name) |
