return { "nvim-neotest/neotest", dependencies = { "nvim-neotest/nvim-nio", "nvim-lua/plenary.nvim", "antoinemadec/FixCursorHold.nvim", "nvim-treesitter/nvim-treesitter", "rcasia/neotest-java", "nvim-neotest/neotest-python", "stevanmilic/neotest-scala", }, keys = { { "na", "lua require('neotest').run.attach()", desc = "Attach to the nearest test" }, { "nl", "lua require('neotest').run.run_last()", desc = "Toggle Test Summary" }, { "no", "lua require('neotest').output_panel.toggle()", desc = "Toggle Test Output Panel" }, { "np", "lua require('neotest').run.stop()", desc = "Stop the nearest test" }, { "ns", "lua require('neotest').summary.toggle()", desc = "Toggle Test Summary" }, { "nt", "lua require('neotest').run.run()", desc = "Run the nearest test" }, { "nT", "lua require('neotest').run.run(vim.fn.expand('%'))", desc = "Run test the current file", }, }, opts = { adapters = { ["neotest-java"] = {}, ["neotest-python"] = { runner = "pytest", args = { "-vvv" }, python = ".venv/bin/python", }, ["neotest-scala"] = { runner = "sbt", command = "test", framework = "munit", }, }, }, }