TPM path refactoring

This commit is contained in:
Bruno Sutic 2015-08-03 00:59:13 +02:00
parent 57c0623fb8
commit cd97b4bceb
No known key found for this signature in database
GPG Key ID: 66D96E4F2F7EF26C
4 changed files with 46 additions and 8 deletions

View File

@ -10,6 +10,7 @@
- add `bin/update_plugins` cli executable script
- refactor test `expect` scripts, make them simpler and ensure they properly
assert expectations
- refactor code that sets 'TMUX_PLUGIN_MANAGER_PATH' global env var
### v2.0.0, 2015-07-07
- enable overriding default key bindings

View File

@ -1,13 +1,15 @@
#!/usr/bin/env bash
default_tpm_path="$HOME/.tmux/plugins/"
CURRENT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
source "$CURRENT_DIR/variables.sh"
tpm_path_set() {
tmux show-environment -g TMUX_PLUGIN_MANAGER_PATH
tmux show-environment -g "$DEFAULT_TPM_ENV_VAR_NAME"
}
set_default_tpm_path() {
tmux set-environment -g TMUX_PLUGIN_MANAGER_PATH "$default_tpm_path"
tmux set-environment -g "$DEFAULT_TPM_ENV_VAR_NAME" "$DEFAULT_TPM_PATH"
}
main() {

View File

@ -8,3 +8,6 @@ clean_key_option="@tpm-clean"
default_clean_key="M-u"
SUPPORTED_TMUX_VERSION="1.9"
DEFAULT_TPM_ENV_VAR_NAME="TMUX_PLUGIN_MANAGER_PATH"
DEFAULT_TPM_PATH="$HOME/.tmux/plugins/"

View File

@ -2,6 +2,9 @@
CURRENT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
TPM_DIR="$PWD"
PLUGINS_DIR="$HOME/.tmux/plugins"
CUSTOM_PLUGINS_DIR="$HOME/foo/plugins"
source "$CURRENT_DIR/helpers/helpers.sh"
source "$CURRENT_DIR/helpers/tpm.sh"
@ -12,16 +15,22 @@ check_binding_defined() {
}
create_test_plugin_helper() {
local plugin_path="$HOME/.tmux/plugins/tmux_test_plugin/"
rm -rf $plugin_path
mkdir -p $plugin_path
local plugin_path="$PLUGINS_DIR/tmux_test_plugin/"
rm -rf "$plugin_path"
mkdir -p "$plugin_path"
while read -r line; do
echo $line >> "$plugin_path/test_plugin.tmux"
while read line; do
echo "$line" >> "$plugin_path/test_plugin.tmux"
done
chmod +x "$plugin_path/test_plugin.tmux"
}
check_tpm_path() {
local correct_tpm_path="$1"
local tpm_path="$(tmux start-server\; show-environment -g TMUX_PLUGIN_MANAGER_PATH | cut -f2 -d=)"
[ "$correct_tpm_path" == "$tpm_path" ]
}
test_plugin_sourcing() {
set_tmux_conf_helper <<- HERE
set -g @plugin "doesnt_matter/tmux_test_plugin"
@ -40,4 +49,27 @@ test_plugin_sourcing() {
teardown_helper
}
test_default_tpm_path() {
set_tmux_conf_helper <<- HERE
run-shell "$TPM_DIR/tpm"
HERE
check_tpm_path "$PLUGINS_DIR" ||
fail_helper "Default TPM path not correct"
teardown_helper
}
test_custom_tpm_path() {
set_tmux_conf_helper <<- HERE
set-environment -g TMUX_PLUGIN_MANAGER_PATH '$CUSTOM_PLUGINS_DIR'
run-shell "$TPM_DIR/tpm"
HERE
check_tpm_path "$CUSTOM_PLUGINS_DIR" ||
fail_helper "Custom TPM path not correct"
teardown_helper
}
run_tests