Bugfixes, Etc. (#502)
* Fix: Jumping to renamed files (#484) * fix: prevent "cursor position outside buffer" error * fix: swap file_name and old_file_name in reviewer data `old_file_name` is not set to the empty string for un-renamed files anymore, because then we can remove the empty-line check in `comment_helpers.go` which was used to replace the empty string with the current file name anyway. * fix: add old_file_name to discussion root node data * fix: also consider old_file_name when jumping to the reviewer This fixes jumping to renamed files, however, may not work for comments that were created on renamed files with the previous version of `gitlab.nvim` as that version assigned the `file_name` and `old_file_name` incorrectly. * refactor: don't shadow variable * fix: check file_name or old_file_name based on which SHA comment belongs to * Fix: Store reviewer data before creating comment popup (#476) * Fix: Make publishing drafts more robust (#483) * Fix: Swap file_name and old_file_name in reviewer data (#485) * Feat: Enable toggling date format between relative and absolute (#491) * Fix: Add opts to help popup (#492) * Fix: Force start_line for jumping to diagnostic to be inside buffer (#494) * fix: redefine colors after reloading colorscheme (#500) * Fix: Use path instead of oldpath as fallback for unrenamed files (#496) * Fix: Use file_name when old_file_name is not set (#495) * fix(ci): fix lua tests (#501) * Proxy Support (#499) This is a #MINOR release. --------- Co-authored-by: Jakub F. Bortlík <jakub.bortlik@proton.me> Co-authored-by: Jonathan Duck <Duckbrain30@gmail.com>
This commit is contained in:
committed by
GitHub
parent
a260f648fe
commit
e29909cd10
65
lua-test.sh
65
lua-test.sh
@@ -1,59 +1,44 @@
|
||||
#!/usr/bin/env bash
|
||||
#
|
||||
# Setup and run tests for lua part of gitlab.nvim.
|
||||
#
|
||||
# In order to run tests you need to have `luarocks` and `git` installed. This script will check if
|
||||
# environment is already setup, if not it will initialize current directory with `luarocks`,
|
||||
# install `busted` framework and download plugin dependencies.
|
||||
#
|
||||
# Requires `luarocks`, `git`, and `nvim` installed.
|
||||
#
|
||||
set -e
|
||||
|
||||
LUA_VERSION="5.1"
|
||||
set -euo pipefail
|
||||
|
||||
PLUGINS_FOLDER="tests/plugins"
|
||||
PLUGINS=(
|
||||
"https://github.com/MunifTanjim/nui.nvim"
|
||||
"https://github.com/nvim-lua/plenary.nvim"
|
||||
"https://github.com/sindrets/diffview.nvim"
|
||||
"https://github.com/MunifTanjim/nui.nvim"
|
||||
"https://github.com/nvim-lua/plenary.nvim"
|
||||
"https://github.com/sindrets/diffview.nvim"
|
||||
)
|
||||
|
||||
if ! command -v luarocks > /dev/null 2>&1; then
|
||||
echo "You need to have luarocks installed in order to run tests."
|
||||
exit 1
|
||||
if ! command -v luarocks >/dev/null 2>&1; then
|
||||
echo "Error: luarocks not found. Please install LuaRocks." >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if ! command -v git > /dev/null 2>&1; then
|
||||
echo "You need to have git installed in order to run tests."
|
||||
exit 1
|
||||
if ! command -v git >/dev/null 2>&1; then
|
||||
echo "Error: git not found. Please install Git." >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if ! luarocks --lua-version=$LUA_VERSION which busted > /dev/null 2>&1; then
|
||||
echo "Installing busted."
|
||||
luarocks init
|
||||
luarocks config --scope project lua_version "$LUA_VERSION"
|
||||
luarocks install --lua-version="$LUA_VERSION" busted
|
||||
if ! command -v nvim >/dev/null 2>&1; then
|
||||
echo "Error: nvim not found. Please install Neovim." >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
for arg in "$@"; do
|
||||
if [[ $arg =~ "--coverage" ]] && ! luarocks --lua-version=$LUA_VERSION which luacov > /dev/null 2>&1; then
|
||||
luarocks install --lua-version="$LUA_VERSION" luacov
|
||||
# lcov reporter for luacov - lcov format is supported by `nvim-coverage`
|
||||
luarocks install --lua-version="$LUA_VERSION" luacov-reporter-lcov
|
||||
fi
|
||||
done
|
||||
|
||||
# Clone test plugin dependencies
|
||||
mkdir -p "$PLUGINS_FOLDER"
|
||||
for plugin in "${PLUGINS[@]}"; do
|
||||
plugin_name=${plugin##*/}
|
||||
plugin_folder="$PLUGINS_FOLDER/$plugin_name"
|
||||
|
||||
# Check if plugin was already downloaded
|
||||
if [[ -d "$plugin_folder/.git" ]]; then
|
||||
# We could also try to pull here but I am not sure if that wouldn't slow down tests too much.
|
||||
continue
|
||||
fi
|
||||
|
||||
plugin_name="${plugin##*/}"
|
||||
plugin_folder="$PLUGINS_FOLDER/$plugin_name"
|
||||
if [[ ! -d "$plugin_folder/.git" ]]; then
|
||||
echo "Cloning $plugin..."
|
||||
git clone --depth 1 "$plugin" "$plugin_folder"
|
||||
|
||||
fi
|
||||
done
|
||||
|
||||
nvim -u NONE -U NONE -N -i NONE -l tests/init.lua "$@"
|
||||
# Run tests
|
||||
echo "Running tests with Neovim..."
|
||||
nvim -u NONE -U NONE -N -i NONE -l tests/init.lua "$@"
|
||||
|
||||
Reference in New Issue
Block a user