Kaynağa Gözat

fix(tests): set up lazy.nvim in the lsp test (#4088)

LostNeophyte 2 yıl önce
ebeveyn
işleme
6c66357cb1

+ 3 - 3
.github/workflows/install.yaml

@@ -21,10 +21,10 @@ jobs:
         include:
           - runner: ubuntu-latest
             os: linux
-            neovim: v0.8.0
+            neovim: v0.9.0
           - runner: macos-latest
             os: osx
-            neovim: v0.8.0
+            neovim: v0.9.0
           - runner: ubuntu-22.04
             os: linux
             neovim: nightly
@@ -78,7 +78,7 @@ jobs:
         uses: rhysd/action-setup-vim@v1
         with:
           neovim: true
-          version: v0.8.0
+          version: v0.9.0
 
       - name: Install LunarVim
         timeout-minutes: 4

+ 3 - 0
lua/lvim/lsp/config.lua

@@ -2,6 +2,7 @@ local skipped_servers = {
   "angularls",
   "ansiblels",
   "antlersls",
+  "azure_pipelines_ls",
   "ccls",
   "csharp_ls",
   "cssmodules_ls",
@@ -22,6 +23,7 @@ local skipped_servers = {
   "phpactor",
   "psalm",
   "pylsp",
+  "pylyzer",
   "pyre",
   "quick_lint_js",
   "reason_ls",
@@ -39,6 +41,7 @@ local skipped_servers = {
   "spectral",
   "sqlls",
   "sqls",
+  "standardrb",
   "stylelint_lsp",
   "svlangserver",
   "tflint",

+ 1 - 0
lua/lvim/lsp/utils.lua

@@ -55,6 +55,7 @@ end
 ---@param filter { filetype: string | string[] }?: (optional) Used to filter the list of server names.
 ---@return string[] list of names of supported servers
 function M.get_supported_servers(filter)
+  require("mason-registry").refresh()
   local _, supported_servers = pcall(function()
     return require("mason-lspconfig").get_available_servers(filter)
   end)

+ 5 - 4
tests/specs/lsp_spec.lua

@@ -21,6 +21,9 @@ a.describe("lsp workflow", function()
   end)
 
   lvim.lsp.templates_dir = join_paths(get_cache_dir(), "artifacts")
+  vim.go.loadplugins = true
+  local plugins = require "lvim.plugins"
+  require("lvim.plugin-loader").load { plugins, lvim.plugins }
 
   a.it("should be able to delete ftplugin templates", function()
     if utils.is_directory(lvim.lsp.templates_dir) then
@@ -36,14 +39,14 @@ a.describe("lsp workflow", function()
 
     require("lvim.lsp").setup()
 
-    assert.True(utils.is_directory(lvim.lsp.templates_dir))
+    assert.True(#vim.fn.glob(lvim.lsp.templates_dir .. "/*.lua", 1, 1) > 0)
   end)
 
   a.it("should not include blacklisted servers in the generated templates", function()
     require("lvim.lsp").setup()
 
     for _, file in ipairs(vim.fn.glob(lvim.lsp.templates_dir .. "/*.lua", 1, 1)) do
-      for _, server_name in ipairs(lvim.lsp.override) do
+      for _, server_name in ipairs(lvim.lsp.automatic_configuration.skipped_servers) do
         local setup_cmd = string.format([[require("lvim.lsp.manager").setup(%q)]], server_name)
         assert.False(helpers.file_contains(file, setup_cmd))
       end
@@ -76,8 +79,6 @@ a.describe("lsp workflow", function()
 
   a.it("should not attempt to re-generate ftplugin templates", function()
     local s = spy.on(require "lvim.lsp.templates", "generate_templates")
-    local plugins = require "lvim.plugins"
-    require("lvim.plugin-loader").load { plugins, lvim.plugins }
 
     require("lvim.lsp").setup()
     assert.spy(s).was_not_called()