Skip to content

Commit 2681544

Browse files
committed
Force color-capable terminal setup in integration tests
1 parent cedfff7 commit 2681544

2 files changed

Lines changed: 22 additions & 5 deletions

File tree

tests/integration/init.lua

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ local root = vim.fn.fnamemodify(script_dir .. "/../..", ":p")
55

66
-- Set up runtime path
77
vim.opt.runtimepath:prepend(root)
8+
vim.opt.termguicolors = true
89

910
-- Load the plugin
1011
require("diffbandit").setup({})

tests/integration/run.sh

Lines changed: 21 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,29 @@ SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
1313
PROJECT_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
1414
TMUX_SESSION="diffbandit_test_$$"
1515
CAPTURE_ROOT="/tmp/diffbandit_visual"
16+
TEST_TERM="screen-256color"
17+
TEST_COLORTERM="truecolor"
1618

1719
# Cleanup function
1820
cleanup() {
1921
tmux kill-session -t "$TMUX_SESSION" 2>/dev/null || true
2022
}
2123
trap cleanup EXIT
2224

25+
configure_tmux() {
26+
tmux start-server
27+
tmux set-option -g default-terminal "$TEST_TERM"
28+
tmux set-option -ga terminal-overrides ",*:Tc" 2>/dev/null || true
29+
tmux set-option -ga terminal-overrides ",*:RGB" 2>/dev/null || true
30+
}
31+
32+
start_test_nvim() {
33+
local command="$1"
34+
tmux send-keys -t "$TMUX_SESSION" "TERM=$TEST_TERM COLORTERM=$TEST_COLORTERM $command" Enter
35+
}
36+
37+
configure_tmux
38+
2339
# Function to run a single test
2440
run_test() {
2541
local test_name="$1"
@@ -36,7 +52,7 @@ run_test() {
3652
tmux new-session -d -s "$TMUX_SESSION" -x 120 -y 48
3753

3854
# Start neovim with minimal config
39-
tmux send-keys -t "$TMUX_SESSION" "nvim -u '$SCRIPT_DIR/init.lua'" Enter
55+
start_test_nvim "nvim -u '$SCRIPT_DIR/init.lua'"
4056

4157
# Wait for nvim to start
4258
sleep 1
@@ -73,7 +89,7 @@ run_scroll_test() {
7389
start_phase_session() {
7490
tmux kill-session -t "$TMUX_SESSION" 2>/dev/null || true
7591
tmux new-session -d -s "$TMUX_SESSION" -x 120 -y 14
76-
tmux send-keys -t "$TMUX_SESSION" "nvim -u '$SCRIPT_DIR/init.lua'" Enter
92+
start_test_nvim "nvim -u '$SCRIPT_DIR/init.lua'"
7793
sleep 1
7894
tmux send-keys -t "$TMUX_SESSION" ":DiffBandit $left_file $right_file" C-m
7995
sleep 2
@@ -109,7 +125,7 @@ run_scroll_test() {
109125
echo " phase: $phase ($left_top,$right_top tall)"
110126
tmux kill-session -t "$TMUX_SESSION" 2>/dev/null || true
111127
tmux new-session -d -s "$TMUX_SESSION" -x 120 -y 40
112-
tmux send-keys -t "$TMUX_SESSION" "nvim -u '$SCRIPT_DIR/init.lua'" Enter
128+
start_test_nvim "nvim -u '$SCRIPT_DIR/init.lua'"
113129
sleep 1
114130
tmux send-keys -t "$TMUX_SESSION" ":DiffBandit $left_file $right_file" C-m
115131
sleep 2
@@ -282,7 +298,7 @@ run_navigation_test() {
282298

283299
tmux kill-session -t "$TMUX_SESSION" 2>/dev/null || true
284300
tmux new-session -d -s "$TMUX_SESSION" -x 120 -y 8
285-
tmux send-keys -t "$TMUX_SESSION" "nvim -u '$SCRIPT_DIR/init.lua'" Enter
301+
start_test_nvim "nvim -u '$SCRIPT_DIR/init.lua'"
286302
sleep 1
287303
tmux send-keys -t "$TMUX_SESSION" ":DiffBandit $left_file $right_file" C-m
288304
sleep 2
@@ -438,7 +454,7 @@ start_git_session() {
438454
local height="${2:-16}"
439455
tmux kill-session -t "$TMUX_SESSION" 2>/dev/null || true
440456
tmux new-session -d -s "$TMUX_SESSION" -x 120 -y "$height"
441-
tmux send-keys -t "$TMUX_SESSION" "cd '$repo' && nvim -n -u '$SCRIPT_DIR/init.lua'" Enter
457+
start_test_nvim "cd '$repo' && nvim -n -u '$SCRIPT_DIR/init.lua'"
442458
sleep 1
443459
}
444460

0 commit comments

Comments
 (0)