@@ -13,13 +13,29 @@ SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
1313PROJECT_ROOT=" $( cd " $SCRIPT_DIR /../.." && pwd) "
1414TMUX_SESSION=" diffbandit_test_$$ "
1515CAPTURE_ROOT=" /tmp/diffbandit_visual"
16+ TEST_TERM=" screen-256color"
17+ TEST_COLORTERM=" truecolor"
1618
1719# Cleanup function
1820cleanup () {
1921 tmux kill-session -t " $TMUX_SESSION " 2> /dev/null || true
2022}
2123trap 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
2440run_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