return { 'nvim-neotest/neotest', dependencies = { 'nvim-neotest/nvim-nio', 'olimorris/neotest-rspec', 'nvim-neotest/neotest-jest', 'nvim-neotest/neotest-python', }, cmd = 'Neotest', config = function() require('neotest').setup({ status = { virtual_text = true }, output = { open_on_run = true }, adapters = { require('neotest-vitest'), require('neotest-jest')({ jestCommand = 'npm test --', jestConfigFile = 'custom.jest.config.ts', env = { CI = true }, cwd = function(path) return vim.fn.getcwd() end, }), }, }) end, keys = { { 'uc', 'lua require("neotest").run.run()', desc = 'Run Current Test' }, { 'uf', 'lua require("neotest").run.run(vim.fn.expand("%"))', desc = 'Run Test File' }, { 'uo', 'lua require("neotest").output.open({ enter = true, auto_close = true })', desc = 'Show Output', }, { 'uS', 'lua require("neotest").summary.toggle', desc = 'Toggle Summary' }, { 'ur', 'lua require("neotest").run.run()', desc = 'Run Nearest Test' }, { 'us', 'lua require("neotest").run.stop()', desc = 'Stop' }, { 'uO', 'lua require("neotest").output_panel.toggle', desc = 'Toggle Output Panel' }, }, }