Files
dokku/tests/unit/git_2.bats
Jose Diaz-Gonzalez 622548057c tests: add assertions to various bats tests
Missing these assertions didn't necessarily break tests but they are more correct and having them should help suss out bugs.
2023-08-05 10:58:57 -04:00

107 lines
2.4 KiB
Bash

#!/usr/bin/env bats
load test_helper
setup() {
global_setup
create_app
}
teardown() {
destroy_app
global_teardown
}
@test "(git) push to non-deploy branch" {
run /bin/bash -c "dokku git:set $TEST_APP deploy-branch custom-branch"
echo "output: $output"
echo "status: $status"
assert_success
GIT_REMOTE_BRANCH=custom-branch run deploy_app
echo "output: $output"
echo "status: $status"
assert_success
run /bin/bash -c "dokku git:set $TEST_APP deploy-branch non-existing-branch"
echo "output: $output"
echo "status: $status"
assert_success
run /bin/bash -c "dokku ps:rebuild $TEST_APP"
echo "output: $output"
echo "status: $status"
assert_output_contains "Cannot build from 'non-existing-branch' as there are no commits stored at that branch."
assert_failure
}
@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) git:initialize" {
run /bin/bash -c "test -d $DOKKU_ROOT/$TEST_APP/refs"
echo "output: $output"
echo "status: $status"
assert_success
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_success
run deploy_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
}