aboutsummaryrefslogtreecommitdiffstats
path: root/tests/mason-core/managers/pip3_spec.lua
diff options
context:
space:
mode:
authorWilliam Boman <william@redwill.se>2022-11-02 18:42:11 +0100
committerGitHub <noreply@github.com>2022-11-02 18:42:11 +0100
commit1ec0dd2fff4b14efb808049822a7cfedba3145c9 (patch)
tree5735873acfc5697e35ee442fbba8a91551d0f8f8 /tests/mason-core/managers/pip3_spec.lua
parentfix(provider): use correct name for github (#620) (diff)
downloadmason-1ec0dd2fff4b14efb808049822a7cfedba3145c9.tar
mason-1ec0dd2fff4b14efb808049822a7cfedba3145c9.tar.gz
mason-1ec0dd2fff4b14efb808049822a7cfedba3145c9.tar.bz2
mason-1ec0dd2fff4b14efb808049822a7cfedba3145c9.tar.lz
mason-1ec0dd2fff4b14efb808049822a7cfedba3145c9.tar.xz
mason-1ec0dd2fff4b14efb808049822a7cfedba3145c9.tar.zst
mason-1ec0dd2fff4b14efb808049822a7cfedba3145c9.zip
test: use stubs and dedent (#621)
Diffstat (limited to 'tests/mason-core/managers/pip3_spec.lua')
-rw-r--r--tests/mason-core/managers/pip3_spec.lua60
1 files changed, 34 insertions, 26 deletions
diff --git a/tests/mason-core/managers/pip3_spec.lua b/tests/mason-core/managers/pip3_spec.lua
index 1ec2dc28..ffba9b04 100644
--- a/tests/mason-core/managers/pip3_spec.lua
+++ b/tests/mason-core/managers/pip3_spec.lua
@@ -3,6 +3,7 @@ local spy = require "luassert.spy"
local stub = require "luassert.stub"
local path = require "mason-core.path"
+local _ = require "mason-core.functional"
local a = require "mason-core.async"
local pip3 = require "mason-core.managers.pip3"
local installer = require "mason-core.installer"
@@ -157,13 +158,17 @@ describe("pip3 version check", function()
it(
"should return current version",
async_test(function()
- spawn.python = spy.new(function()
- return Result.success {
- stdout = [[
- [{"name": "astroid", "version": "2.9.3"}, {"name": "mccabe", "version": "0.6.1"}, {"name": "python-lsp-server", "version": "1.3.0", "latest_version": "1.4.0", "latest_filetype": "wheel"}, {"name": "wrapt", "version": "1.13.3", "latest_version": "1.14.0", "latest_filetype": "wheel"}]
- ]],
- }
- end)
+ stub(spawn, "python")
+ spawn.python.returns(Result.success {
+ stdout = _.dedent [[
+ [
+ {"name": "astroid", "version": "2.9.3"},
+ {"name": "mccabe", "version": "0.6.1"},
+ {"name": "python-lsp-server", "version": "1.3.0", "latest_version": "1.4.0", "latest_filetype": "wheel"},
+ {"name": "wrapt", "version": "1.13.3", "latest_version": "1.14.0", "latest_filetype": "wheel"}
+ ]
+ ]],
+ })
local result = pip3.get_installed_primary_package_version(
mock.new {
@@ -186,8 +191,6 @@ describe("pip3 version check", function()
}
assert.is_true(result:is_success())
assert.equals("1.3.0", result:get_or_nil())
-
- spawn.python = nil
end)
)
@@ -199,13 +202,17 @@ describe("pip3 version check", function()
name = "python-lsp-server",
version = "1.4.0",
})
- spawn.python = spy.new(function()
- return Result.success {
- stdout = [[
- [{"name": "astroid", "version": "2.9.3"}, {"name": "mccabe", "version": "0.6.1"}, {"name": "python-lsp-server", "version": "1.3.0", "latest_version": "1.4.0", "latest_filetype": "wheel"}, {"name": "wrapt", "version": "1.13.3", "latest_version": "1.14.0", "latest_filetype": "wheel"}]
- ]],
- }
- end)
+ stub(spawn, "python")
+ spawn.python.returns(Result.success {
+ stdout = [[
+ [
+ {"name": "astroid", "version": "2.9.3"},
+ {"name": "mccabe", "version": "0.6.1"},
+ {"name": "python-lsp-server", "version": "1.3.0", "latest_version": "1.4.0", "latest_filetype": "wheel"},
+ {"name": "wrapt", "version": "1.13.3", "latest_version": "1.14.0", "latest_filetype": "wheel"}
+ ]
+ ]],
+ })
local result = pip3.check_outdated_primary_package(
mock.new {
@@ -223,21 +230,23 @@ describe("pip3 version check", function()
current_version = "1.3.0",
latest_version = "1.4.0",
}, result:get_or_nil())
-
- spawn.python = nil
end)
)
it(
"should return failure if primary package is not outdated",
async_test(function()
- spawn.python = spy.new(function()
- return Result.success {
- stdout = [[
- [{"name": "astroid", "version": "2.9.3"}, {"name": "mccabe", "version": "0.6.1"}, {"name": "python-lsp-server", "version": "1.3.0", "latest_version": "1.4.0", "latest_filetype": "wheel"}, {"name": "wrapt", "version": "1.13.3", "latest_version": "1.14.0", "latest_filetype": "wheel"}]
- ]],
- }
- end)
+ stub(spawn, "python")
+ spawn.python.returns(Result.success {
+ stdout = [[
+ [
+ {"name": "astroid", "version": "2.9.3"},
+ {"name": "mccabe", "version": "0.6.1"},
+ {"name": "python-lsp-server", "version": "1.3.0", "latest_version": "1.4.0", "latest_filetype": "wheel"},
+ {"name": "wrapt", "version": "1.13.3", "latest_version": "1.14.0", "latest_filetype": "wheel"}
+ ]
+ ]],
+ })
stub(api, "get")
api.get.on_call_with("/api/pypi/python-lsp-server/versions/latest").returns(Result.success {
name = "python-lsp-server",
@@ -256,7 +265,6 @@ describe("pip3 version check", function()
assert.is_true(result:is_failure())
assert.equals("Primary package is not outdated.", result:err_or_nil())
- spawn.python = nil
end)
)
end)