From 53dccb3a77da54a4e428275e8b44dbff77e0d47d Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Tue, 29 Apr 2025 19:40:18 +0200 Subject: feat(tests)!: new infrastructure based on makefile Problem: Not easy to run all checks and tests locally. Redundant CI workflows. Solution: Separate CI into two workflows: * lint: Lua files (stylua, luals), query files (valid captures, predicates, directives using tsqueryls), docs (SUPPORTED_LANGUAGES.md) -- does not need parser installation * tests: parsers (ABI compatibility), query files (tsqueryls on Linux/macOS; nvim on Windows), highlight and indent tests (separated for better readability) -- needs parser installation (but only once) Switch to https://github.com/nvim-treesitter/highlight-assertions fork with ABI 15 support. Run all tests (on Linux and macOS) through `make` (`formatlua`, `checklua`, `lintquery`, `formatquery`, `checkquery`, `docs`, `tests`), which downloads and caches all necessary dependencies. Remove `update-readme` workflow (replaced by lint job on PRs). --- scripts/ci-install.sh | 7 ------- 1 file changed, 7 deletions(-) (limited to 'scripts/ci-install.sh') diff --git a/scripts/ci-install.sh b/scripts/ci-install.sh index 43f3c4ade..3d656f842 100755 --- a/scripts/ci-install.sh +++ b/scripts/ci-install.sh @@ -10,19 +10,12 @@ if [[ $os == Linux ]]; then tar -zxf nvim-linux-x86_64.tar.gz sudo ln -s "$PWD"/nvim-linux-x86_64/bin/nvim /usr/local/bin rm -rf "$PWD"/nvim-linu-x86_x64/lib/nvim/parser - mkdir -p ~/.local/share/nvim/site/pack/nvim-treesitter/start - ln -s "$PWD" ~/.local/share/nvim/site/pack/nvim-treesitter/start elif [[ $os == Darwin ]]; then RELEASE_NAME="nvim-macos-$(uname -m)" curl -L "https://github.com/neovim/neovim/releases/download/${NVIM_TAG}/$RELEASE_NAME.tar.gz" | tar -xz sudo ln -s "$PWD/$RELEASE_NAME/bin/nvim" /usr/local/bin rm -rf "$PWD/$RELEASE_NAME/lib/nvim/parser" - mkdir -p ~/.local/share/nvim/site/pack/nvim-treesitter/start - ln -s "$PWD" ~/.local/share/nvim/site/pack/nvim-treesitter/start else curl -L "https://github.com/neovim/neovim/releases/download/${NVIM_TAG}/nvim-win64.zip" -o nvim-win64.zip unzip nvim-win64 - mkdir -p ~/AppData/Local/nvim/pack/nvim-treesitter/start - mkdir -p ~/AppData/Local/nvim-data - cp -r "$PWD" ~/AppData/Local/nvim/pack/nvim-treesitter/start fi -- cgit v1.2.3-70-g09d2