mirror of
https://github.com/tmux/tmux.git
synced 2026-10-16 16:44:30 +00:00
Test for 5757 from Alejandro Pacheco.
This commit is contained in:
45
regress/respawn-window-kill-panes.sh
Executable file
45
regress/respawn-window-kill-panes.sh
Executable file
@@ -0,0 +1,45 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# respawn-window -k destroys every pane but the first, including the active
|
||||||
|
# pane. The window must be left with the first pane active and must be drawn
|
||||||
|
# again for an attached client. The terminal is a pane of a second server.
|
||||||
|
|
||||||
|
PATH=/bin:/usr/bin
|
||||||
|
TERM=screen
|
||||||
|
|
||||||
|
[ -z "$TEST_TMUX" ] && TEST_TMUX=$(readlink -f ../tmux)
|
||||||
|
TMUX="$TEST_TMUX -Ltest$$ -f/dev/null"
|
||||||
|
TMUX2="$TEST_TMUX -Ltest2$$ -f/dev/null"
|
||||||
|
trap '$TMUX kill-server 2>/dev/null; $TMUX2 kill-server 2>/dev/null' 0 1 15
|
||||||
|
|
||||||
|
$TMUX new -d 'sleep 1000' || exit 1
|
||||||
|
$TMUX2 new -d "unset TMUX; exec $TMUX attach" || exit 1
|
||||||
|
n=0
|
||||||
|
while [ -z "$($TMUX lsc 2>/dev/null)" ]; do
|
||||||
|
n=$((n + 1))
|
||||||
|
[ $n -gt 100 ] && exit 1
|
||||||
|
sleep 0.1
|
||||||
|
done
|
||||||
|
|
||||||
|
$TMUX splitw 'sleep 1000' || exit 1
|
||||||
|
$TMUX splitw -h 'sleep 1000' || exit 1
|
||||||
|
sleep 1
|
||||||
|
$TMUX respawnw -k 'sleep 1000' || exit 1
|
||||||
|
sleep 1
|
||||||
|
$TMUX has || { echo "the server died"; exit 1; }
|
||||||
|
[ "$($TMUX lsp -F '#{pane_index}:#{pane_active}')" = "0:1" ] || exit 1
|
||||||
|
|
||||||
|
# The same with the window zoomed: it must be unzoomed and the window must
|
||||||
|
# then be destroyed cleanly.
|
||||||
|
$TMUX neww 'sleep 1000' || exit 1
|
||||||
|
$TMUX splitw 'sleep 1000' || exit 1
|
||||||
|
$TMUX resizep -Z || exit 1
|
||||||
|
sleep 1
|
||||||
|
$TMUX respawnw -k 'sleep 1000' || exit 1
|
||||||
|
sleep 1
|
||||||
|
[ "$($TMUX display -p '#{window_panes}:#{window_zoomed_flag}')" = "1:0" ] ||
|
||||||
|
exit 1
|
||||||
|
$TMUX killw || exit 1
|
||||||
|
sleep 1
|
||||||
|
$TMUX has || { echo "the server died"; exit 1; }
|
||||||
|
exit 0
|
||||||
Reference in New Issue
Block a user