mirror of
https://github.com/nix-community/nixvim.git
synced 2025-06-23 09:18:38 +02:00
plugins/neotest: add more adapters
This commit is contained in:
parent
975f1ca526
commit
5004178c0c
6 changed files with 109 additions and 2 deletions
|
@ -4,6 +4,9 @@
|
||||||
# - Add the adapter to `all-adapters` in `tests/test-sources/plugins/neotest/default.nix`
|
# - Add the adapter to `all-adapters` in `tests/test-sources/plugins/neotest/default.nix`
|
||||||
# - Add a more complete test case in `tests/test-sources/plugins/neotest/NAME.nix`
|
# - Add a more complete test case in `tests/test-sources/plugins/neotest/NAME.nix`
|
||||||
{
|
{
|
||||||
|
bash = {
|
||||||
|
treesitter-parser = "bash";
|
||||||
|
};
|
||||||
dart = {
|
dart = {
|
||||||
treesitter-parser = "dart";
|
treesitter-parser = "dart";
|
||||||
};
|
};
|
||||||
|
@ -16,15 +19,27 @@
|
||||||
elixir = {
|
elixir = {
|
||||||
treesitter-parser = "elixir";
|
treesitter-parser = "elixir";
|
||||||
};
|
};
|
||||||
|
foundry = {
|
||||||
|
treesitter-parser = "solidity";
|
||||||
|
};
|
||||||
go = {
|
go = {
|
||||||
treesitter-parser = "go";
|
treesitter-parser = "go";
|
||||||
};
|
};
|
||||||
|
gradle = {
|
||||||
|
treesitter-parser = "kotlin,java";
|
||||||
|
};
|
||||||
haskell = {
|
haskell = {
|
||||||
treesitter-parser = "haskell";
|
treesitter-parser = "haskell";
|
||||||
};
|
};
|
||||||
|
java = {
|
||||||
|
treesitter-parser = "java";
|
||||||
|
};
|
||||||
jest = {
|
jest = {
|
||||||
treesitter-parser = "javascript";
|
treesitter-parser = "javascript";
|
||||||
};
|
};
|
||||||
|
minitest = {
|
||||||
|
treesitter-parser = "ruby";
|
||||||
|
};
|
||||||
pest = {
|
pest = {
|
||||||
treesitter-parser = "php";
|
treesitter-parser = "php";
|
||||||
};
|
};
|
||||||
|
@ -52,4 +67,7 @@
|
||||||
vitest = {
|
vitest = {
|
||||||
treesitter-parser = "javascript";
|
treesitter-parser = "javascript";
|
||||||
};
|
};
|
||||||
|
zig = {
|
||||||
|
treesitter-parser = "zig";
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
with lib; let
|
with lib; let
|
||||||
supportedAdapters = import ./adapters-list.nix;
|
supportedAdapters = import ./adapters-list.nix;
|
||||||
|
|
||||||
mkAdapter = name: props: {
|
mkAdapter = name: {treesitter-parser}: {
|
||||||
options.plugins.neotest.adapters.${name} = {
|
options.plugins.neotest.adapters.${name} = {
|
||||||
enable = mkEnableOption name;
|
enable = mkEnableOption name;
|
||||||
|
|
||||||
|
@ -30,7 +30,7 @@ with lib; let
|
||||||
(!config.plugins.treesitter.enable)
|
(!config.plugins.treesitter.enable)
|
||||||
''
|
''
|
||||||
Nixvim (plugins.neotest.adapters.${name}): This adapter requires `treesitter` to be enabled.
|
Nixvim (plugins.neotest.adapters.${name}): This adapter requires `treesitter` to be enabled.
|
||||||
You might want to set `plugins.treesitter.enable = true` and ensure that the `${props.treesitter-parser}` is enabled.
|
You might want to set `plugins.treesitter.enable = true` and ensure that the `${props.treesitter-parser}` parser is enabled.
|
||||||
'';
|
'';
|
||||||
|
|
||||||
plugins.neotest.enabledAdapters = [
|
plugins.neotest.enabledAdapters = [
|
||||||
|
|
|
@ -10,13 +10,18 @@
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
||||||
adapters = {
|
adapters = {
|
||||||
|
bash.enable = true;
|
||||||
dart.enable = true;
|
dart.enable = true;
|
||||||
deno.enable = true;
|
deno.enable = true;
|
||||||
dotnet.enable = true;
|
dotnet.enable = true;
|
||||||
elixir.enable = true;
|
elixir.enable = true;
|
||||||
|
foundry.enable = true;
|
||||||
go.enable = true;
|
go.enable = true;
|
||||||
|
gradle.enable = true;
|
||||||
haskell.enable = true;
|
haskell.enable = true;
|
||||||
|
java.enable = true;
|
||||||
jest.enable = true;
|
jest.enable = true;
|
||||||
|
minitest.enable = true;
|
||||||
pest.enable = true;
|
pest.enable = true;
|
||||||
phpunit.enable = true;
|
phpunit.enable = true;
|
||||||
plenary.enable = true;
|
plenary.enable = true;
|
||||||
|
@ -26,6 +31,7 @@
|
||||||
scala.enable = true;
|
scala.enable = true;
|
||||||
testthat.enable = true;
|
testthat.enable = true;
|
||||||
vitest.enable = true;
|
vitest.enable = true;
|
||||||
|
zig.enable = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
38
tests/test-sources/plugins/neotest/foundry.nix
Normal file
38
tests/test-sources/plugins/neotest/foundry.nix
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
{
|
||||||
|
example = {
|
||||||
|
plugins = {
|
||||||
|
treesitter.enable = true;
|
||||||
|
neotest = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
adapters.foundry = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
settings = {
|
||||||
|
foundryCommand = "forge test";
|
||||||
|
foundryConfig = null;
|
||||||
|
env = {};
|
||||||
|
cwd.__raw = ''
|
||||||
|
function ()
|
||||||
|
return lib.files.match_root_pattern("foundry.toml")
|
||||||
|
end
|
||||||
|
'';
|
||||||
|
filterDir.__raw = ''
|
||||||
|
function(name)
|
||||||
|
return (
|
||||||
|
name ~= "node_modules"
|
||||||
|
and name ~= "cache"
|
||||||
|
and name ~= "out"
|
||||||
|
and name ~= "artifacts"
|
||||||
|
and name ~= "docs"
|
||||||
|
and name ~= "doc"
|
||||||
|
-- and name ~= "lib"
|
||||||
|
)
|
||||||
|
end
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
18
tests/test-sources/plugins/neotest/java.nix
Normal file
18
tests/test-sources/plugins/neotest/java.nix
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
{
|
||||||
|
example = {
|
||||||
|
plugins = {
|
||||||
|
treesitter.enable = true;
|
||||||
|
neotest = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
adapters.java = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
settings = {
|
||||||
|
ignore_wrapper = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
27
tests/test-sources/plugins/neotest/minitest.nix
Normal file
27
tests/test-sources/plugins/neotest/minitest.nix
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
{
|
||||||
|
example = {
|
||||||
|
plugins = {
|
||||||
|
treesitter.enable = true;
|
||||||
|
neotest = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
adapters.minitest = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
settings = {
|
||||||
|
test_cmd.__raw = ''
|
||||||
|
function()
|
||||||
|
return vim.tbl_flatten({
|
||||||
|
"bundle",
|
||||||
|
"exec",
|
||||||
|
"rails",
|
||||||
|
"test",
|
||||||
|
})
|
||||||
|
end
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
Loading…
Add table
Add a link
Reference in a new issue