{"id":47178851,"url":"https://github.com/nvim-contrib/neotest-ginkgo","last_synced_at":"2026-05-05T07:02:44.524Z","repository":{"id":170599933,"uuid":"646164703","full_name":"nvim-contrib/neotest-ginkgo","owner":"nvim-contrib","description":"Neotest adapter for Ginkgo v2 — run, debug, and navigate Go BDD tests in Neovim","archived":false,"fork":false,"pushed_at":"2026-05-04T07:18:57.000Z","size":388,"stargazers_count":11,"open_issues_count":1,"forks_count":7,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-05-04T09:32:28.955Z","etag":null,"topics":["bdd","dap","ginkgo","ginkgo-testing","go","golang","lua","neotest","neotest-adapter","neovim","neovim-plugin","nix","nvim","nvim-plugin","testing"],"latest_commit_sha":null,"homepage":"","language":"Lua","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nvim-contrib.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-05-27T13:49:02.000Z","updated_at":"2026-05-04T07:19:02.000Z","dependencies_parsed_at":null,"dependency_job_id":"0c256d8c-4982-4fe9-83d1-7ef8c757742b","html_url":"https://github.com/nvim-contrib/neotest-ginkgo","commit_stats":null,"previous_names":["nvim-extensions/neotest-ginkgo","nvim-extensions/nvim-ginkgo","nvim-contrib/nvim-ginkgo","nvim-contrib/neotest-ginkgo"],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/nvim-contrib/neotest-ginkgo","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nvim-contrib%2Fneotest-ginkgo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nvim-contrib%2Fneotest-ginkgo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nvim-contrib%2Fneotest-ginkgo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nvim-contrib%2Fneotest-ginkgo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nvim-contrib","download_url":"https://codeload.github.com/nvim-contrib/neotest-ginkgo/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nvim-contrib%2Fneotest-ginkgo/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32639060,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-04T10:08:07.713Z","status":"online","status_checked_at":"2026-05-05T02:00:06.033Z","response_time":54,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bdd","dap","ginkgo","ginkgo-testing","go","golang","lua","neotest","neotest-adapter","neovim","neovim-plugin","nix","nvim","nvim-plugin","testing"],"created_at":"2026-03-13T07:04:44.986Z","updated_at":"2026-05-05T07:02:44.518Z","avatar_url":"https://github.com/nvim-contrib.png","language":"Lua","funding_links":[],"categories":[],"sub_categories":[],"readme":"# neotest-ginkgo\n\n\u003e [Neotest](https://github.com/nvim-neotest/neotest) adapter for running [Ginkgo v2](https://github.com/onsi/ginkgo) tests in Neovim. Run, debug, and inspect your Go BDD specs directly from the editor — with full support for nested `Describe`/`Context`/`When`/`It` hierarchies, `DescribeTable`/`Entry`, and DAP debugging via [nvim-dap-go](https://github.com/leoluz/nvim-dap-go).\n\n[![test](https://github.com/nvim-contrib/neotest-ginkgo/actions/workflows/test.yml/badge.svg)](https://github.com/nvim-contrib/neotest-ginkgo/actions/workflows/test.yml)\n[![Release](https://img.shields.io/github/v/release/nvim-contrib/neotest-ginkgo?include_prereleases)](https://github.com/nvim-contrib/neotest-ginkgo/releases)\n[![License](https://img.shields.io/github/license/nvim-contrib/neotest-ginkgo)](LICENSE)\n[![Neovim](https://img.shields.io/badge/Neovim-0.9%2B-blueviolet?logo=neovim\u0026logoColor=white)](https://neovim.io)\n[![Neotest](https://img.shields.io/badge/neotest-adapter-green)](https://github.com/nvim-neotest/neotest)\n\n\u003cimg src=\"doc/tapes/output/demo.webp\" alt=\"neotest-ginkgo demo\" width=\"100%\"\u003e\n\n## Features\n\n- Run individual specs, describe blocks, or entire suites\n- Full Ginkgo v2 support: `Describe`, `Context`, `It`, `When`, `Specify`, `DescribeTable`, `DescribeTableSubtree`, and `Entry`\n- Focus (`FDescribe`, `FIt`) and pending (`PDescribe`, `PIt`, `XIt`) variants\n- Nested test hierarchy displayed in the Neotest summary tree\n- DAP integration for step-through debugging of individual specs\n- Structured output panel with color-coded test results\n- Works with `lazy.nvim`, `packer.nvim`, and any other plugin manager\n\n## Requirements\n\n- Neovim \u003e= 0.9\n- [neotest](https://github.com/nvim-neotest/neotest)\n- [nvim-treesitter](https://github.com/nvim-treesitter/nvim-treesitter) with the `go` parser installed\n- [nvim-nio](https://github.com/nvim-neotest/nvim-nio)\n- [Ginkgo v2](https://github.com/onsi/ginkgo) (`go install github.com/onsi/ginkgo/v2/ginkgo@latest`)\n\n## Installation\n\n### lazy.nvim\n\n```lua\n{\n  \"nvim-neotest/neotest\",\n  lazy = true,\n  dependencies = {\n    \"nvim-neotest/nvim-nio\",\n    \"nvim-lua/plenary.nvim\",\n    \"nvim-treesitter/nvim-treesitter\",\n    \"nvim-contrib/neotest-ginkgo\",\n  },\n  config = function()\n    require(\"neotest\").setup({\n      adapters = {\n        require(\"neotest-ginkgo\"),\n      },\n    })\n  end,\n}\n```\n\n### packer.nvim\n\n```lua\nuse {\n  \"nvim-neotest/neotest\",\n  requires = {\n    \"nvim-neotest/nvim-nio\",\n    \"nvim-lua/plenary.nvim\",\n    \"nvim-treesitter/nvim-treesitter\",\n    \"nvim-contrib/neotest-ginkgo\",\n  },\n  config = function()\n    require(\"neotest\").setup({\n      adapters = {\n        require(\"neotest-ginkgo\"),\n      },\n    })\n  end,\n}\n```\n\n## Configuration\n\nYou can customize the Ginkgo command and DAP arguments via `setup()`:\n\n```lua\nrequire(\"neotest-ginkgo\").setup({\n  -- Base ginkgo command (default: {\"ginkgo\", \"run\", \"-v\"})\n  command = { \"ginkgo\", \"run\", \"-v\", \"--race\" },\n  -- DAP arguments with --ginkgo. prefix (default: {\"--ginkgo.v\"})\n  dap = { \"--ginkgo.v\", \"--ginkgo.trace\" },\n})\n```\n\n## Usage\n\nUse the standard Neotest keybindings to run tests. Example setup:\n\n```lua\nvim.keymap.set(\"n\", \"\u003cleader\u003ett\", function() require(\"neotest\").run.run() end, { desc = \"Run nearest test\" })\nvim.keymap.set(\"n\", \"\u003cleader\u003etf\", function() require(\"neotest\").run.run(vim.fn.expand(\"%\")) end, { desc = \"Run file\" })\nvim.keymap.set(\"n\", \"\u003cleader\u003ets\", function() require(\"neotest\").summary.toggle() end, { desc = \"Toggle summary\" })\nvim.keymap.set(\"n\", \"\u003cleader\u003eto\", function() require(\"neotest\").output_panel.toggle() end, { desc = \"Toggle output\" })\nvim.keymap.set(\"n\", \"\u003cleader\u003etd\", function() require(\"neotest\").run.run({ strategy = \"dap\" }) end, { desc = \"Debug nearest test\" })\n```\n\n## Contributing\n\nContributions are welcome! Please open an issue or pull request.\n\nTo set up a development environment with [Nix](https://nixos.org):\n\n```bash\nnix develop\nmake test\n```\n\nWithout Nix, update `tests/setup.lua` with the paths to your local plugin installations, then:\n\n```bash\nmake test\n```\n\n## License\n\n[MIT](LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnvim-contrib%2Fneotest-ginkgo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnvim-contrib%2Fneotest-ginkgo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnvim-contrib%2Fneotest-ginkgo/lists"}