test: replace plenary with plentest.nvim

Problem: plenary.nvim as test runner is overkill and no longer
maintained.

Solution: Replace with a minimal fork based on Neovim API and vendored
luassert.
This commit is contained in:
Christian Clason
2026-03-17 10:12:15 +01:00
committed by Christian Clason
parent 2cc172c28e
commit 2b50ab5ccb
2 changed files with 10 additions and 10 deletions

View File

@@ -86,13 +86,13 @@ $(HLASSERT):
tar -xf $(HLASSERT_TARBALL) -C $@
rm -rf $(HLASSERT_TARBALL)
PLENARY := $(DEPDIR)/plenary.nvim
PLENTEST := $(DEPDIR)/plentest.nvim
.PHONY: plenary
plenary: $(PLENARY)
.PHONY: plentest
plentest: $(PLENTEST)
$(PLENARY):
git clone --filter=blob:none https://github.com/nvim-lua/plenary.nvim $(PLENARY)
$(PLENTEST):
git clone --filter=blob:none https://github.com/nvim-treesitter/plentest.nvim $(PLENTEST)
# actual test targets
@@ -129,10 +129,10 @@ docs: $(NVIM)
$(NVIM_BIN) -l scripts/update-readme.lua
.PHONY: tests
tests: $(NVIM) $(HLASSERT) $(PLENARY)
HLASSERT=$(HLASSERT)/highlight-assertions PLENARY=$(PLENARY) \
tests: $(NVIM) $(HLASSERT) $(PLENTEST)
HLASSERT=$(HLASSERT)/highlight-assertions PLENTEST=$(PLENTEST) \
$(NVIM_BIN) --headless --clean -u scripts/minimal_init.lua \
-c "PlenaryBustedDirectory tests/$(TESTS) { minimal_init = './scripts/minimal_init.lua' }"
-c "lua require('plentest').test_directory('tests/$(TESTS)', { minimal_init = './scripts/minimal_init.lua' })"
.PHONY: all
all: lua query docs tests

View File

@@ -1,5 +1,5 @@
vim.o.rtp = vim.o.rtp .. ',.,' .. os.getenv('PLENARY')
vim.cmd.runtime({ 'plugin/plenary.vim', bang = true })
vim.o.rtp = os.getenv('PLENTEST') .. ',.,' .. vim.o.rtp
vim.o.rtp = vim.fn.stdpath('data') .. '/site,' .. vim.o.rtp
vim.cmd.runtime({ 'plugin/query_predicates.lua', bang = true })
vim.cmd.runtime({ 'plugin/filetypes.lua', bang = true })