mirror of
https://github.com/jimeh/tmuxifier.git
synced 2026-02-19 09:56:39 +00:00
Add and use test helpers to create/kill test-specific tmux sessions
This commit is contained in:
@@ -6,35 +6,25 @@ source "${root}/lib/layout-helpers.sh"
|
|||||||
# __get_first_window_index() tests.
|
# __get_first_window_index() tests.
|
||||||
#
|
#
|
||||||
|
|
||||||
# Setup.
|
|
||||||
libexec="${root}/libexec"
|
|
||||||
export TMUXIFIER_TMUX_OPTS="-L tmuxifier-tests"
|
|
||||||
session="test"
|
|
||||||
|
|
||||||
|
|
||||||
# When first window has a index of 0.
|
# When first window has a index of 0.
|
||||||
tmux $TMUXIFIER_TMUX_OPTS new-session -d -s $session
|
create-test-session
|
||||||
assert "__get_first_window_index" "0"
|
assert "__get_first_window_index" "0"
|
||||||
tmux $TMUXIFIER_TMUX_OPTS kill-server
|
kill-test-session
|
||||||
|
|
||||||
# When first window has a index of 1.
|
# When first window has a index of 1.
|
||||||
tmux $TMUXIFIER_TMUX_OPTS new-session -d -s $session
|
create-test-session
|
||||||
tmux $TMUXIFIER_TMUX_OPTS new-window -t "$session:1"
|
test-socket-tmux new-window -t "$session:1"
|
||||||
tmux $TMUXIFIER_TMUX_OPTS kill-window -t "$session:0"
|
test-socket-tmux kill-window -t "$session:0"
|
||||||
assert "__get_first_window_index" "1"
|
assert "__get_first_window_index" "1"
|
||||||
tmux $TMUXIFIER_TMUX_OPTS kill-server
|
kill-test-session
|
||||||
|
|
||||||
# When first window has a index of 2.
|
# When first window has a index of 2.
|
||||||
tmux $TMUXIFIER_TMUX_OPTS new-session -d -s $session
|
create-test-session
|
||||||
tmux $TMUXIFIER_TMUX_OPTS new-window -t "$session:2"
|
test-socket-tmux new-window -t "$session:2"
|
||||||
tmux $TMUXIFIER_TMUX_OPTS kill-window -t "$session:0"
|
test-socket-tmux kill-window -t "$session:0"
|
||||||
assert "__get_first_window_index" "2"
|
assert "__get_first_window_index" "2"
|
||||||
tmux $TMUXIFIER_TMUX_OPTS kill-server
|
kill-test-session
|
||||||
|
|
||||||
|
|
||||||
# Tear down.
|
|
||||||
unset TMUXIFIER_TMUX_OPTS
|
|
||||||
unset session
|
|
||||||
|
|
||||||
# End of tests.
|
# End of tests.
|
||||||
assert_end "__get_first_window_index()"
|
assert_end "__get_first_window_index()"
|
||||||
|
|||||||
@@ -8,17 +8,15 @@ source "${root}/lib/util.sh"
|
|||||||
|
|
||||||
# Setup.
|
# Setup.
|
||||||
libexec="${root}/libexec"
|
libexec="${root}/libexec"
|
||||||
export TMUXIFIER_TMUX_OPTS="-L tmuxifier-tests"
|
test-socket-tmux new-session -d -s foobar
|
||||||
tmux $TMUXIFIER_TMUX_OPTS new-session -d -s foobar
|
test-socket-tmux new-session -d -s dude
|
||||||
tmux $TMUXIFIER_TMUX_OPTS new-session -d -s dude
|
|
||||||
|
|
||||||
# Passes all arguments to Tmux.
|
# Passes all arguments to Tmux.
|
||||||
assert "${libexec}/tmuxifier-tmux list-sessions -F \"- #{session_name}\"" \
|
assert "${libexec}/tmuxifier-tmux list-sessions -F \"- #{session_name}\"" \
|
||||||
"- dude\n- foobar"
|
"- dude\n- foobar"
|
||||||
|
|
||||||
# Tear down.
|
# Tear down.
|
||||||
tmux $TMUXIFIER_TMUX_OPTS kill-server
|
kill-test-server
|
||||||
unset TMUXIFIER_TMUX_OPTS
|
|
||||||
|
|
||||||
# End of tests.
|
# End of tests.
|
||||||
assert_end "tmuxifier-tmux"
|
assert_end "tmuxifier-tmux"
|
||||||
|
|||||||
@@ -18,6 +18,9 @@ abs_dirname() {
|
|||||||
cd "$cwd"
|
cd "$cwd"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Find and store path to Tmux binary.
|
||||||
|
TMUX_BIN="$(command -v tmux)"
|
||||||
|
|
||||||
# Set testroot variable.
|
# Set testroot variable.
|
||||||
testroot="$(abs_dirname "$BASH_SOURCE")"
|
testroot="$(abs_dirname "$BASH_SOURCE")"
|
||||||
|
|
||||||
@@ -43,3 +46,29 @@ unset TMUXIFIER_NO_COMPLETE
|
|||||||
# Include assert.sh and stub.sh libraries.
|
# Include assert.sh and stub.sh libraries.
|
||||||
source "${testroot}/assert.sh"
|
source "${testroot}/assert.sh"
|
||||||
source "${testroot}/stub.sh"
|
source "${testroot}/stub.sh"
|
||||||
|
|
||||||
|
|
||||||
|
test-socket-tmux() {
|
||||||
|
export TMUXIFIER_TMUX_OPTS="-L tmuxifier-tests"
|
||||||
|
"$TMUX_BIN" $TMUXIFIER_TMUX_OPTS $@
|
||||||
|
}
|
||||||
|
|
||||||
|
create-test-session() {
|
||||||
|
session="$1"
|
||||||
|
if [ -z "$session" ]; then session="test"; fi
|
||||||
|
|
||||||
|
test-socket-tmux new-session -d -s "$session"
|
||||||
|
}
|
||||||
|
|
||||||
|
kill-test-session() {
|
||||||
|
local target="$1"
|
||||||
|
if [ -z "$target" ]; then target="$session"; fi
|
||||||
|
|
||||||
|
test-socket-tmux kill-session -t "$target"
|
||||||
|
}
|
||||||
|
|
||||||
|
kill-test-server() {
|
||||||
|
test-socket-tmux kill-server
|
||||||
|
unset TMUXIFIER_TMUX_OPTS
|
||||||
|
unset session
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user