diff options
| -rw-r--r-- | lua/mason-registry/init.lua | 5 | ||||
| -rw-r--r-- | tests/mason-registry/registry_spec.lua | 20 |
2 files changed, 23 insertions, 2 deletions
diff --git a/lua/mason-registry/init.lua b/lua/mason-registry/init.lua index 8ae2b0a5..523a1256 100644 --- a/lua/mason-registry/init.lua +++ b/lua/mason-registry/init.lua @@ -171,6 +171,9 @@ end local function refresh(sources, callback) if not settings.current.registry_cache.refresh then log.debug "Not performing a registry refresh as it's disabled in settings." + if callback then + return callback(true, {}) + end return true, {} end local a = require "mason-core.async" @@ -186,7 +189,7 @@ local function refresh(sources, callback) state.checksum ) if callback then - callback(true, {}) + return callback(true, {}) end return true, {} end diff --git a/tests/mason-registry/registry_spec.lua b/tests/mason-registry/registry_spec.lua index 1f1d9aaa..cf909667 100644 --- a/tests/mason-registry/registry_spec.lua +++ b/tests/mason-registry/registry_spec.lua @@ -38,11 +38,17 @@ describe("mason-registry", function() describe("refresh/update", function() local a = require "mason-core.async" + local settings = require "mason.settings" + local installer = require "mason-registry.installer" + + after_each(function() + settings.set(settings._DEFAULT_SETTINGS) + end) it("should refresh registry synchronously", function() local ok, updated_registries = registry.refresh() assert.is_true(ok) - assert.same(updated_registries, {}) + assert.same({}, updated_registries) end) it("should call registry.refresh callback", function() @@ -62,5 +68,17 @@ describe("mason-registry", function() assert.spy(spy).was_called_with(true, match.is_table()) end) end) + + it("should immediately return if refresh is disabled", function() + settings.current.registry_cache.refresh = false + local ok, registries = registry.refresh() + assert.is_true(ok) + assert.same({}, registries) + + local spy = spy.new() + registry.refresh(spy) + assert.spy(spy).was_called(1) + assert.spy(spy).was_called_with(true, {}) + end) end) end) |
