mirror of
https://github.com/dokku/dokku.git
synced 2025-12-29 00:25:08 +01:00
feat: add tests for all help commands
This commit is contained in:
@@ -6,7 +6,7 @@ cmd-events-help() {
|
||||
declare desc="help command"
|
||||
declare CMD="$1"
|
||||
local plugin_name="events"
|
||||
local plugin_description="Interact with Dokku event logger"
|
||||
local plugin_description="Manage event logging"
|
||||
|
||||
if [[ "$CMD" == "$plugin_name:help" ]]; then
|
||||
echo -e "Usage: dokku $plugin_name[:COMMAND]"
|
||||
|
||||
@@ -10,6 +10,20 @@ teardown() {
|
||||
global_teardown
|
||||
}
|
||||
|
||||
@test "(apps) apps:help" {
|
||||
run /bin/bash -c "dokku apps"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage apps"
|
||||
help_output="$output"
|
||||
|
||||
run /bin/bash -c "dokku apps:help"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage apps"
|
||||
assert_output "$help_output"
|
||||
}
|
||||
|
||||
@test "(apps) apps:create" {
|
||||
run /bin/bash -c "dokku apps:create $TEST_APP"
|
||||
echo "output: $output"
|
||||
|
||||
@@ -27,6 +27,20 @@ teardown() {
|
||||
global_teardown
|
||||
}
|
||||
|
||||
@test "(certs) certs:help" {
|
||||
run /bin/bash -c "dokku certs"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage SSL (TLS) certs"
|
||||
help_output="$output"
|
||||
|
||||
run /bin/bash -c "dokku certs:help"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage SSL (TLS) certs"
|
||||
assert_output "$help_output"
|
||||
}
|
||||
|
||||
@test "(certs) certs:add" {
|
||||
run /bin/bash -c "dokku certs:add $TEST_APP $BATS_TMPDIR/tls/server.crt $BATS_TMPDIR/tls/server.key"
|
||||
echo "output: $output"
|
||||
|
||||
@@ -16,6 +16,20 @@ teardown() {
|
||||
global_teardown
|
||||
}
|
||||
|
||||
@test "(checks) checks:help" {
|
||||
run /bin/bash -c "dokku checks"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage zero-downtime settings"
|
||||
help_output="$output"
|
||||
|
||||
run /bin/bash -c "dokku checks:help"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage zero-downtime settings"
|
||||
assert_output "$help_output"
|
||||
}
|
||||
|
||||
@test "(checks) checks" {
|
||||
run /bin/bash -c "dokku checks $TEST_APP 2>/dev/null | grep $TEST_APP | xargs"
|
||||
echo "output: $output"
|
||||
|
||||
@@ -12,6 +12,20 @@ teardown() {
|
||||
global_teardown
|
||||
}
|
||||
|
||||
@test "(git) git:help" {
|
||||
run /bin/bash -c "dokku git"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage app deploys via git"
|
||||
help_output="$output"
|
||||
|
||||
run /bin/bash -c "dokku git:help"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage app deploys via git"
|
||||
assert_output "$help_output"
|
||||
}
|
||||
|
||||
@test "(git) deploy specific branch" {
|
||||
run /bin/bash -c "dokku git:set --global deploy-branch global-branch"
|
||||
echo "output: $output"
|
||||
|
||||
@@ -12,6 +12,20 @@ teardown() {
|
||||
global_teardown
|
||||
}
|
||||
|
||||
@test "(ps) ps:help" {
|
||||
run /bin/bash -c "dokku ps"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage container processes"
|
||||
help_output="$output"
|
||||
|
||||
run /bin/bash -c "dokku ps:help"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage container processes"
|
||||
assert_output "$help_output"
|
||||
}
|
||||
|
||||
@test "(ps) ps:inspect" {
|
||||
dokku config:set "$TEST_APP" key=value key=value=value
|
||||
deploy_app dockerfile
|
||||
|
||||
@@ -12,6 +12,20 @@ teardown() {
|
||||
global_teardown
|
||||
}
|
||||
|
||||
@test "(repo) repo:help" {
|
||||
run /bin/bash -c "dokku repo"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage the app's repo"
|
||||
help_output="$output"
|
||||
|
||||
run /bin/bash -c "dokku repo:help"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage the app's repo"
|
||||
assert_output "$help_output"
|
||||
}
|
||||
|
||||
@test "(repo) repo:gc, repo:purge-cache" {
|
||||
run /bin/bash -c "dokku repo:gc $TEST_APP"
|
||||
echo "output: $output"
|
||||
|
||||
@@ -25,6 +25,20 @@ deploy_app_tar() {
|
||||
sleep 5 # nginx needs some time to itself...
|
||||
}
|
||||
|
||||
@test "(tar) tar:help" {
|
||||
run /bin/bash -c "dokku tar"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage app deploys via tar"
|
||||
help_output="$output"
|
||||
|
||||
run /bin/bash -c "dokku tar:help"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage app deploys via tar"
|
||||
assert_output "$help_output"
|
||||
}
|
||||
|
||||
@test "(tar) non-tarbomb deploy using tar:in" {
|
||||
deploy_app_tar nodejs-express --transform 's,^,prefix/,'
|
||||
|
||||
|
||||
@@ -18,6 +18,20 @@ teardown() {
|
||||
global_teardown
|
||||
}
|
||||
|
||||
@test "(config) config:help" {
|
||||
run /bin/bash -c "dokku config"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage global and app-specific config vars"
|
||||
help_output="$output"
|
||||
|
||||
run /bin/bash -c "dokku config:help"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage global and app-specific config vars"
|
||||
assert_output "$help_output"
|
||||
}
|
||||
|
||||
@test "(config) config:set --global" {
|
||||
run ssh dokku@dokku.me config:set --global test_var=true test_var2=\"hello world\" test_var3='double\"quotes'
|
||||
echo "output: $output"
|
||||
|
||||
@@ -12,6 +12,20 @@ teardown() {
|
||||
global_teardown
|
||||
}
|
||||
|
||||
@test "(docker-options) docker-options:help" {
|
||||
run /bin/bash -c "dokku docker-options"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage docker options for an app"
|
||||
help_output="$output"
|
||||
|
||||
run /bin/bash -c "dokku docker-options:help"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage docker options for an app"
|
||||
assert_output "$help_output"
|
||||
}
|
||||
|
||||
@test "(docker-options) docker-options:add (all phases)" {
|
||||
run /bin/bash -c "dokku docker-options:add $TEST_APP build,deploy,run \"-v /tmp\""
|
||||
echo "output: $output"
|
||||
|
||||
@@ -16,6 +16,20 @@ teardown() {
|
||||
global_teardown
|
||||
}
|
||||
|
||||
@test "(domains) domains:help" {
|
||||
run /bin/bash -c "dokku domains"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage domains used by the proxy"
|
||||
help_output="$output"
|
||||
|
||||
run /bin/bash -c "dokku domains:help"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage domains used by the proxy"
|
||||
assert_output "$help_output"
|
||||
}
|
||||
|
||||
@test "(domains) domains" {
|
||||
dokku domains:setup $TEST_APP
|
||||
run /bin/bash -c "dokku domains $TEST_APP 2>/dev/null | grep ${TEST_APP}.dokku.me"
|
||||
|
||||
@@ -43,6 +43,20 @@ assert_external_port() {
|
||||
fi
|
||||
}
|
||||
|
||||
@test "(network) network:help" {
|
||||
run /bin/bash -c "dokku network"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage network settings for an app"
|
||||
help_output="$output"
|
||||
|
||||
run /bin/bash -c "dokku network:help"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage network settings for an app"
|
||||
assert_output "$help_output"
|
||||
}
|
||||
|
||||
@test "(network) network:set bind-all-interfaces" {
|
||||
deploy_app
|
||||
assert_nonssl_domain "${TEST_APP}.dokku.me"
|
||||
|
||||
@@ -17,6 +17,20 @@ teardown() {
|
||||
global_teardown
|
||||
}
|
||||
|
||||
@test "(nginx) nginx:help" {
|
||||
run /bin/bash -c "dokku nginx"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage the nginx proxy"
|
||||
help_output="$output"
|
||||
|
||||
run /bin/bash -c "dokku nginx:help"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage the nginx proxy"
|
||||
assert_output "$help_output"
|
||||
}
|
||||
|
||||
@test "(nginx-vhosts) nginx:build-config (domains:disable/enable)" {
|
||||
deploy_app
|
||||
dokku domains:disable $TEST_APP
|
||||
|
||||
@@ -12,6 +12,20 @@ teardown() {
|
||||
global_teardown
|
||||
}
|
||||
|
||||
@test "(resource) resource:help" {
|
||||
run /bin/bash -c "dokku resource"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage resource settings for an app"
|
||||
help_output="$output"
|
||||
|
||||
run /bin/bash -c "dokku resource:help"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage resource settings for an app"
|
||||
assert_output "$help_output"
|
||||
}
|
||||
|
||||
@test "(resource) resource:limit" {
|
||||
run /bin/bash -c "dokku resource:limit $TEST_APP"
|
||||
echo "output: $output"
|
||||
|
||||
@@ -12,6 +12,20 @@ teardown() {
|
||||
global_teardown
|
||||
}
|
||||
|
||||
@test "(storage) storage:help" {
|
||||
run /bin/bash -c "dokku storage"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage mounted volumes"
|
||||
help_output="$output"
|
||||
|
||||
run /bin/bash -c "dokku storage:help"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage mounted volumes"
|
||||
assert_output "$help_output"
|
||||
}
|
||||
|
||||
@test "(storage) storage:mount, storage:list, storage:umount" {
|
||||
run /bin/bash -c "dokku storage:mount $TEST_APP /tmp/mount:/mount"
|
||||
echo "output: $output"
|
||||
|
||||
@@ -12,6 +12,20 @@ teardown() {
|
||||
global_teardown
|
||||
}
|
||||
|
||||
@test "(events) events:help" {
|
||||
run /bin/bash -c "dokku events"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage event logging"
|
||||
help_output="$output"
|
||||
|
||||
run /bin/bash -c "dokku events:help"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage event logging"
|
||||
assert_output "$help_output"
|
||||
}
|
||||
|
||||
@test "(events) check conffiles" {
|
||||
run /bin/bash -c "test -f /etc/logrotate.d/dokku"
|
||||
echo "output: $output"
|
||||
|
||||
@@ -10,6 +10,20 @@ teardown() {
|
||||
global_teardown
|
||||
}
|
||||
|
||||
@test "(scheduler-docker-local) scheduler-docker-local:help" {
|
||||
run /bin/bash -c "dokku scheduler-docker-local"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage the docker-local scheduler integration for an app"
|
||||
help_output="$output"
|
||||
|
||||
run /bin/bash -c "dokku scheduler-docker-local:help"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage the docker-local scheduler integration for an app"
|
||||
assert_output "$help_output"
|
||||
}
|
||||
|
||||
@test "(scheduler-docker-local) timer installed" {
|
||||
run /bin/bash -c "systemctl list-timers | grep dokku-retire"
|
||||
echo "output: $output"
|
||||
|
||||
@@ -36,6 +36,20 @@ teardown() {
|
||||
global_teardown
|
||||
}
|
||||
|
||||
@test "(ssh-keys) ssh-keys:help" {
|
||||
run /bin/bash -c "dokku ssh-keys"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage public ssh keys used for deployment"
|
||||
help_output="$output"
|
||||
|
||||
run /bin/bash -c "dokku ssh-keys:help"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage public ssh keys used for deployment"
|
||||
assert_output "$help_output"
|
||||
}
|
||||
|
||||
@test "(ssh-keys) ssh-keys:add, ssh-keys:list, ssh-keys:remove" {
|
||||
run /bin/bash -c "dokku ssh-keys:add name1 /tmp/testkey.pub"
|
||||
echo "output: $output"
|
||||
|
||||
@@ -24,6 +24,20 @@ teardown() {
|
||||
global_teardown
|
||||
}
|
||||
|
||||
@test "(plugin) plugin:help" {
|
||||
run /bin/bash -c "dokku plugin"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage installed plugins"
|
||||
help_output="$output"
|
||||
|
||||
run /bin/bash -c "dokku plugin:help"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage installed plugins"
|
||||
assert_output "$help_output"
|
||||
}
|
||||
|
||||
@test "(plugin) plugin:install, plugin:disable, plugin:update plugin:uninstall" {
|
||||
run /bin/bash -c "dokku plugin:install $TEST_PLUGIN_GIT_REPO --name $TEST_PLUGIN_NAME"
|
||||
echo "output: $output"
|
||||
|
||||
@@ -41,6 +41,20 @@ assert_external_port() {
|
||||
fi
|
||||
}
|
||||
|
||||
@test "(proxy) proxy:help" {
|
||||
run /bin/bash -c "dokku proxy"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage the proxy integration for an app"
|
||||
help_output="$output"
|
||||
|
||||
run /bin/bash -c "dokku proxy:help"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage the proxy integration for an app"
|
||||
assert_output "$help_output"
|
||||
}
|
||||
|
||||
@test "(proxy) proxy:enable/disable" {
|
||||
deploy_app
|
||||
assert_nonssl_domain "${TEST_APP}.dokku.me"
|
||||
|
||||
@@ -12,6 +12,20 @@ teardown() {
|
||||
global_teardown
|
||||
}
|
||||
|
||||
@test "(tags) tags:help" {
|
||||
run /bin/bash -c "dokku tags"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage docker image tags"
|
||||
help_output="$output"
|
||||
|
||||
run /bin/bash -c "dokku tags:help"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage docker image tags"
|
||||
assert_output "$help_output"
|
||||
}
|
||||
|
||||
@test "(tags) tags:create, tags, tags:destroy" {
|
||||
run /bin/bash -c "dokku tags:create $TEST_APP v0.9.0"
|
||||
echo "output: $output"
|
||||
|
||||
@@ -24,6 +24,20 @@ teardown() {
|
||||
assert_success
|
||||
}
|
||||
|
||||
@test "(trace) trace:help" {
|
||||
run /bin/bash -c "dokku trace"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage trace mode"
|
||||
help_output="$output"
|
||||
|
||||
run /bin/bash -c "dokku trace:help"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_contains "Manage trace mode"
|
||||
assert_output "$help_output"
|
||||
}
|
||||
|
||||
@test "(trace) trace on" {
|
||||
run /bin/bash -c "dokku trace on"
|
||||
echo "output: $output"
|
||||
|
||||
Reference in New Issue
Block a user