feat: split out test files and execute them manually
This breaks the old grouping mechanism, but honestly that was a weird way of doing it.
This commit is contained in:
140
tests/unit/git.bats
Normal file
140
tests/unit/git.bats
Normal file
@@ -0,0 +1,140 @@
|
||||
#!/usr/bin/env bats
|
||||
|
||||
load test_helper
|
||||
|
||||
setup() {
|
||||
global_setup
|
||||
create_app
|
||||
}
|
||||
|
||||
teardown() {
|
||||
destroy_app
|
||||
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"
|
||||
echo "status: $status"
|
||||
assert_success
|
||||
|
||||
GIT_REMOTE_BRANCH=global-branch run deploy_app
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_success
|
||||
|
||||
run /bin/bash -c "dokku ps:rebuild $TEST_APP"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_success
|
||||
|
||||
run deploy_app
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_success
|
||||
assert_output_contains "deploy did not complete"
|
||||
|
||||
run /bin/bash -c "dokku git:set $TEST_APP deploy-branch app-branch"
|
||||
GIT_REMOTE_BRANCH=app-branch run deploy_app
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_success
|
||||
|
||||
run /bin/bash -c "dokku ps:rebuild $TEST_APP"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_success
|
||||
|
||||
run /bin/bash -c "dokku git:set --global deploy-branch"
|
||||
}
|
||||
|
||||
@test "(git) ensure GIT_REV env var is set" {
|
||||
deploy_app
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_success
|
||||
|
||||
run /bin/bash -c "dokku config:get $TEST_APP GIT_REV"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_exists
|
||||
}
|
||||
|
||||
@test "(git) disable GIT_REV" {
|
||||
run /bin/bash -c "dokku git:set $TEST_APP rev-env-var"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_success
|
||||
|
||||
deploy_app
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_success
|
||||
|
||||
run /bin/bash -c "dokku config:get $TEST_APP GIT_REV"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output ""
|
||||
}
|
||||
|
||||
@test "(git) customize the GIT_REV environment variable" {
|
||||
run /bin/bash -c "dokku git:set $TEST_APP rev-env-var GIT_REV_ALT"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_success
|
||||
|
||||
deploy_app
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_success
|
||||
|
||||
run /bin/bash -c "dokku config:get $TEST_APP GIT_REV_ALT"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_output_exists
|
||||
}
|
||||
|
||||
@test "(git) git:initialize" {
|
||||
run /bin/bash -c "test -d $DOKKU_ROOT/$TEST_APP/refs"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_failure
|
||||
|
||||
run /bin/bash -c "dokku git:initialize $TEST_APP"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_success
|
||||
|
||||
run /bin/bash -c "test -d $DOKKU_ROOT/$TEST_APP/refs"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_success
|
||||
}
|
||||
|
||||
@test "(git) git:initialize via deploy" {
|
||||
run /bin/bash -c "test -d $DOKKU_ROOT/$TEST_APP/refs"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_failure
|
||||
|
||||
deploy_app
|
||||
|
||||
run /bin/bash -c "test -d $DOKKU_ROOT/$TEST_APP/refs"
|
||||
echo "output: $output"
|
||||
echo "status: $status"
|
||||
assert_success
|
||||
}
|
||||
Reference in New Issue
Block a user