From e87ed0fdaafe3291a2e35cb708d31d595e3b2216 Mon Sep 17 00:00:00 2001 From: Cezary Drożak Date: Mon, 4 Oct 2021 19:37:38 +0200 Subject: feat: add "experimental" key to parsers feat(ci): mark parsers as experimental in README --- tests/unit/parsers_spec.lua | 46 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 tests/unit/parsers_spec.lua (limited to 'tests') diff --git a/tests/unit/parsers_spec.lua b/tests/unit/parsers_spec.lua new file mode 100644 index 000000000..d40578b87 --- /dev/null +++ b/tests/unit/parsers_spec.lua @@ -0,0 +1,46 @@ +local stub = require "luassert.stub" +local parsers = require "nvim-treesitter.parsers" + +describe("maintained_parsers", function() + before_each(function() + stub(vim.fn, "executable") + end) + + after_each(function() + vim.fn.executable:clear() + end) + + it("does not return experimental parsers", function() + local old_list = parsers.list + parsers.list = { + c = { + install_info = { + url = "https://github.com/tree-sitter/tree-sitter-c", + files = { "src/parser.c" }, + }, + maintainers = { "@vigoux" }, + }, + d = { + install_info = { + url = "https://github.com/CyberShadow/tree-sitter-d", + files = { "src/parser.c", "src/scanner.cc" }, + requires_generate_from_grammar = true, + }, + maintainers = { "@nawordar" }, + experimental = true, + }, + haskell = { + install_info = { + url = "https://github.com/tree-sitter/tree-sitter-haskell", + files = { "src/parser.c", "src/scanner.cc" }, + }, + }, + } + + local expected = { "c" } + + assert.same(parsers.maintained_parsers(), expected) + + parsers.list = old_list + end) +end) -- cgit v1.2.3-70-g09d2