181 lines
4.2 KiB
Bash
181 lines
4.2 KiB
Bash
#!/usr/bin/env bash
|
|
|
|
setup_file(){
|
|
load "$PWD/tests/integration/helpers/common"
|
|
_common_setup
|
|
_add_server
|
|
_new_app
|
|
|
|
run $ABRA app secret rm "$TEST_APP_DOMAIN" --all
|
|
assert_success
|
|
}
|
|
|
|
teardown_file(){
|
|
run $ABRA app secret rm "$TEST_APP_DOMAIN" --all
|
|
assert_success
|
|
|
|
_rm_app
|
|
_rm_server
|
|
}
|
|
|
|
teardown(){
|
|
# https://github.com/bats-core/bats-core/issues/383#issuecomment-738628888
|
|
if [[ -z "${BATS_TEST_COMPLETED}" ]]; then
|
|
_undeploy_app
|
|
fi
|
|
}
|
|
|
|
setup(){
|
|
load "$PWD/tests/integration/helpers/common"
|
|
_common_setup
|
|
}
|
|
|
|
@test "generate: validate arguments" {
|
|
run $ABRA app secret generate
|
|
assert_failure
|
|
assert_output --partial 'no app provided'
|
|
|
|
run $ABRA app secret generate DOESNTEXIST
|
|
assert_failure
|
|
assert_output --partial 'cannot find app'
|
|
|
|
run $ABRA app secret generate "$TEST_APP_DOMAIN"
|
|
assert_failure
|
|
assert_output --partial 'missing arguments'
|
|
|
|
run $ABRA app secret generate "$TEST_APP_DOMAIN" testSecret testVersion --all
|
|
assert_failure
|
|
assert_output --partial 'cannot use'
|
|
assert_output --partial "'--all' together"
|
|
}
|
|
|
|
@test "generate: single secret no match" {
|
|
run $ABRA app secret generate "$TEST_APP_DOMAIN" DOESNTEXIST v1
|
|
assert_failure
|
|
assert_output --partial "doesn't exist in the env config"
|
|
}
|
|
|
|
@test "generate: create secrets" {
|
|
run $ABRA app secret ls "$TEST_APP_DOMAIN"
|
|
assert_success
|
|
assert_output --partial 'false'
|
|
|
|
run $ABRA app secret generate "$TEST_APP_DOMAIN" --all
|
|
assert_success
|
|
|
|
run $ABRA app secret ls "$TEST_APP_DOMAIN"
|
|
assert_success
|
|
assert_output --partial 'true'
|
|
|
|
run $ABRA app secret rm "$TEST_APP_DOMAIN" --all
|
|
assert_success
|
|
}
|
|
|
|
@test "insert: validate arguments" {
|
|
run $ABRA app secret insert
|
|
assert_failure
|
|
assert_output --partial 'no app provided'
|
|
|
|
run $ABRA app secret insert "$TEST_APP_DOMAIN"
|
|
assert_failure
|
|
assert_output --partial 'missing arguments'
|
|
|
|
run $ABRA app secret insert "$TEST_APP_DOMAIN" bar
|
|
assert_failure
|
|
assert_output --partial 'missing arguments'
|
|
|
|
run $ABRA app secret insert "$TEST_APP_DOMAIN" bar baz
|
|
assert_failure
|
|
assert_output --partial 'missing arguments'
|
|
}
|
|
|
|
@test "insert: create secret" {
|
|
run $ABRA app secret ls "$TEST_APP_DOMAIN"
|
|
assert_success
|
|
assert_output --partial 'false'
|
|
|
|
run $ABRA app secret insert "$TEST_APP_DOMAIN" test_password v1 foo
|
|
assert_success
|
|
assert_output --partial 'successfully stored on server'
|
|
|
|
run $ABRA app secret ls "$TEST_APP_DOMAIN"
|
|
assert_success
|
|
assert_output --partial 'true'
|
|
|
|
run $ABRA app secret rm "$TEST_APP_DOMAIN" test_password
|
|
assert_success
|
|
}
|
|
|
|
@test "rm: validate arguments" {
|
|
run $ABRA app secret rm
|
|
assert_failure
|
|
assert_output --partial 'no app provided'
|
|
|
|
run $ABRA app secret rm DOESNTEXIST
|
|
assert_failure
|
|
assert_output --partial 'cannot find app'
|
|
|
|
run $ABRA app secret rm "$TEST_APP_DOMAIN"
|
|
assert_failure
|
|
assert_output --partial 'no secret(s) specified'
|
|
|
|
run $ABRA app secret rm "$TEST_APP_DOMAIN" test_password --all
|
|
assert_failure
|
|
assert_output --partial 'cannot use'
|
|
assert_output --partial "'--all' together"
|
|
}
|
|
|
|
@test "rm: single secret no match" {
|
|
run $ABRA app secret rm "$TEST_APP_DOMAIN" foo_password
|
|
assert_failure
|
|
assert_output --partial "doesn't exist on server"
|
|
}
|
|
|
|
@test "rm: no secret match" {
|
|
run $ABRA app secret rm "$TEST_APP_DOMAIN" --all
|
|
assert_failure
|
|
assert_output --partial 'no secrets to remove'
|
|
}
|
|
|
|
@test "rm: remove secret" {
|
|
run $ABRA app secret generate "$TEST_APP_DOMAIN" --all
|
|
assert_success
|
|
|
|
run $ABRA app secret ls "$TEST_APP_DOMAIN"
|
|
assert_success
|
|
assert_output --partial 'true'
|
|
|
|
run $ABRA app secret rm "$TEST_APP_DOMAIN" --all
|
|
assert_success
|
|
|
|
run $ABRA app secret ls "$TEST_APP_DOMAIN"
|
|
assert_success
|
|
assert_output --partial 'false'
|
|
}
|
|
|
|
@test "ls: validate arguments" {
|
|
run $ABRA app secret ls
|
|
assert_failure
|
|
assert_output --partial 'no app provided'
|
|
|
|
run $ABRA app secret ls DOESNTEXIST
|
|
assert_failure
|
|
assert_output --partial 'cannot find app'
|
|
}
|
|
|
|
@test "ls: show secrets" {
|
|
run $ABRA app secret ls "$TEST_APP_DOMAIN"
|
|
assert_success
|
|
assert_output --partial 'false'
|
|
|
|
run $ABRA app secret generate "$TEST_APP_DOMAIN" --all
|
|
assert_success
|
|
|
|
run $ABRA app secret ls "$TEST_APP_DOMAIN"
|
|
assert_success
|
|
assert_output --partial 'true'
|
|
|
|
run $ABRA app secret rm "$TEST_APP_DOMAIN" --all
|
|
assert_success
|
|
}
|