Files
dokku/tests/unit/git_5.bats
Jose Diaz-Gonzalez 5846301a48 tests: make it possible to specify an alternative base domain for tests
When developing Dokku, it is useful to use a real domain to test actual functionality. This is impossible if the domain is hardcoded to dokku.me in testing.
2023-08-05 20:58:26 -04:00

76 lines
2.3 KiB
Bash

#!/usr/bin/env bats
load test_helper
setup() {
global_setup
create_app
touch /home/dokku/.ssh/known_hosts
chown dokku:dokku /home/dokku/.ssh/known_hosts
}
teardown() {
rm -f /home/dokku/.ssh/id_rsa.pub || true
destroy_app
global_teardown
}
@test "(git) git:from-archive [missing]" {
run /bin/bash -c "dokku git:from-archive $TEST_APP"
echo "output: $output"
echo "status: $status"
assert_failure
}
@test "(git) git:from-archive [invalid archive type]" {
run /bin/bash -c "dokku git:from-archive --archive-type tarball $TEST_APP http://example.com/src.tar"
echo "output: $output"
echo "status: $status"
assert_failure
}
@test "(git) git:from-archive [tar]" {
run /bin/bash -c "dokku git:from-archive $TEST_APP https://github.com/dokku/smoke-test-app/releases/download/2.0.0/smoke-test-app.tar"
echo "output: $output"
echo "status: $status"
assert_success
assert_http_success "http://${TEST_APP}.${DOKKU_DOMAIN}"
}
@test "(git) git:from-archive [tar.gz]" {
run /bin/bash -c "dokku git:from-archive --archive-type tar.gz $TEST_APP https://github.com/dokku/smoke-test-app/archive/2.0.0.tar.gz"
echo "output: $output"
echo "status: $status"
assert_success
assert_http_success "http://${TEST_APP}.${DOKKU_DOMAIN}"
}
@test "(git) git:from-archive [zip]" {
run /bin/bash -c "dokku git:from-archive --archive-type zip $TEST_APP https://github.com/dokku/smoke-test-app/archive/2.0.0.zip"
echo "output: $output"
echo "status: $status"
assert_success
assert_http_success "http://${TEST_APP}.${DOKKU_DOMAIN}"
}
@test "(git) git:from-archive [stdin-file]" {
run /bin/bash -c "curl -sL https://github.com/dokku/smoke-test-app/releases/download/2.0.0/smoke-test-app.tar -o /tmp/smoke-test-app.tar"
echo "output: $output"
echo "status: $status"
assert_success
run /bin/bash -c "cat /tmp/smoke-test-app.tar | dokku git:from-archive $TEST_APP --"
echo "output: $output"
echo "status: $status"
assert_success
assert_http_success "http://${TEST_APP}.${DOKKU_DOMAIN}"
}
@test "(git) git:from-archive [stdin-curl]" {
run /bin/bash -c "curl -sL https://github.com/dokku/smoke-test-app/releases/download/2.0.0/smoke-test-app.tar | dokku git:from-archive $TEST_APP --"
echo "output: $output"
echo "status: $status"
assert_success
assert_http_success "http://${TEST_APP}.${DOKKU_DOMAIN}"
}