Added test suite for enable/disable
parent
cc8621a888
commit
098186754c
|
|
@ -1,5 +1,6 @@
|
|||
#!/usr/bin/env bats
|
||||
|
||||
load ../test_helper
|
||||
load ../../lib/composure
|
||||
load ../../plugins/available/base.plugin
|
||||
|
||||
|
|
@ -7,4 +8,101 @@ cite _about _param _example _group _author _version
|
|||
|
||||
load ../../lib/helpers
|
||||
|
||||
## TODO: write some tests.
|
||||
function __setup_plugin_tests {
|
||||
mkdir -p $BASH_IT/plugins
|
||||
cp -r ../plugins/available $BASH_IT/plugins
|
||||
mkdir -p $BASH_IT/plugins/enabled
|
||||
}
|
||||
|
||||
@test "enable the node plugin" {
|
||||
__setup_plugin_tests
|
||||
|
||||
run _enable-plugin "node"
|
||||
[ "${lines[0]}" == 'node enabled with priority 250.' ]
|
||||
[ -L "$BASH_IT/plugins/enabled/250---node.plugin.bash" ]
|
||||
}
|
||||
|
||||
@test "enable the nvm plugin" {
|
||||
__setup_plugin_tests
|
||||
|
||||
run _enable-plugin "nvm"
|
||||
[ "${lines[0]}" == 'nvm enabled with priority 225.' ]
|
||||
[ -L "$BASH_IT/plugins/enabled/225---nvm.plugin.bash" ]
|
||||
}
|
||||
|
||||
@test "enable an unknown plugin" {
|
||||
__setup_plugin_tests
|
||||
|
||||
run _enable-plugin "unknown-foo"
|
||||
[ "${lines[0]}" == 'sorry, unknown-foo does not appear to be an available plugin.' ]
|
||||
[ ! -L "$BASH_IT/plugins/enabled/250---unknown-foo.plugin.bash" ]
|
||||
[ ! -L "$BASH_IT/plugins/enabled/unknown-foo.plugin.bash" ]
|
||||
}
|
||||
|
||||
@test "disable a plugin that is not enabled" {
|
||||
__setup_plugin_tests
|
||||
|
||||
run _disable-plugin "sdkman"
|
||||
[ "${lines[0]}" == 'sorry, sdkman does not appear to be an enabled plugin.' ]
|
||||
}
|
||||
|
||||
@test "enable and disable the nvm plugin" {
|
||||
__setup_plugin_tests
|
||||
|
||||
run _enable-plugin "nvm"
|
||||
[ "${lines[0]}" == 'nvm enabled with priority 225.' ]
|
||||
[ -L "$BASH_IT/plugins/enabled/225---nvm.plugin.bash" ]
|
||||
|
||||
run _disable-plugin "nvm"
|
||||
[ "${lines[0]}" == 'nvm disabled.' ]
|
||||
[ ! -L "$BASH_IT/plugins/enabled/225---nvm.plugin.bash" ]
|
||||
}
|
||||
|
||||
@test "disable the nvm plugin if it was enabled without a priority" {
|
||||
__setup_plugin_tests
|
||||
|
||||
ln -s $BASH_IT/plugins/available/nvm.plugin.bash $BASH_IT/plugins/enabled/nvm.plugin.bash
|
||||
[ -L "$BASH_IT/plugins/enabled/nvm.plugin.bash" ]
|
||||
|
||||
run _disable-plugin "nvm"
|
||||
[ "${lines[0]}" == 'nvm disabled.' ]
|
||||
[ ! -L "$BASH_IT/plugins/enabled/nvm.plugin.bash" ]
|
||||
}
|
||||
|
||||
@test "enable the nvm plugin twice" {
|
||||
__setup_plugin_tests
|
||||
|
||||
run _enable-plugin "nvm"
|
||||
[ "${lines[0]}" == 'nvm enabled with priority 225.' ]
|
||||
[ -L "$BASH_IT/plugins/enabled/225---nvm.plugin.bash" ]
|
||||
|
||||
run _enable-plugin "nvm"
|
||||
[ "${lines[0]}" == 'nvm is already enabled.' ]
|
||||
[ -L "$BASH_IT/plugins/enabled/225---nvm.plugin.bash" ]
|
||||
}
|
||||
|
||||
@test "enable all plugins" {
|
||||
__setup_plugin_tests
|
||||
|
||||
run _enable-plugin "all"
|
||||
local available=$(find $BASH_IT/plugins/available -name *.plugin.bash | wc -l)
|
||||
local enabled=$(find $BASH_IT/plugins/enabled -name 2*.plugin.bash | wc -l)
|
||||
echo "Available: $available, Enabled: $enabled"
|
||||
[ "$available" == "$enabled" ]
|
||||
}
|
||||
|
||||
@test "describe the nvm plugin without enabling it" {
|
||||
__setup_plugin_tests
|
||||
|
||||
_bash-it-describe "plugins" "a" "plugin" "Plugin" | grep "nvm" | grep "\[ \]"
|
||||
}
|
||||
|
||||
@test "describe the nvm plugin after enabling it" {
|
||||
__setup_plugin_tests
|
||||
|
||||
run _enable-plugin "nvm"
|
||||
[ "${lines[0]}" == 'nvm enabled with priority 225.' ]
|
||||
[ -L "$BASH_IT/plugins/enabled/225---nvm.plugin.bash" ]
|
||||
|
||||
_bash-it-describe "plugins" "a" "plugin" "Plugin" | grep "nvm" | grep "\[x\]"
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue