Files
dokku/tests/unit/core_2.bats
Jose Diaz-Gonzalez edd6e476b3 refactor: simplify how url generation works
The URLS file is no longer necessary as urls are now generated directly from the app VHOST file.

This also moves all the url generation logic to the domains plugin.
2022-12-02 02:19:59 -05:00

123 lines
3.1 KiB
Bash

#!/usr/bin/env bats
load test_helper
setup() {
global_setup
create_app
}
teardown() {
rm -rf /home/dokku/$TEST_APP/tls
destroy_app
global_teardown
}
@test "(core) cleanup:help" {
run /bin/bash -c "dokku cleanup:help"
echo "output: $output"
echo "status: $status"
assert_output_contains "Cleans up exited/dead Docker containers and removes dangling image"
}
@test "(core) unknown command" {
run /bin/bash -c "dokku fakecommand"
echo "output: $output"
echo "status: $status"
assert_failure
run /bin/bash -c "dokku fakecommand 2>&1 | grep -q 'is not a dokku command'"
echo "output: $output"
echo "status: $status"
assert_success
run /bin/bash -c "dokku apps: 2>&1 | grep -q 'is not a dokku command'"
echo "output: $output"
echo "status: $status"
assert_success
}
@test "(core) urls (non-ssl)" {
assert_urls "http://${TEST_APP}.dokku.me"
dokku domains:add $TEST_APP "test.dokku.me"
assert_urls "http://${TEST_APP}.dokku.me" "http://test.dokku.me"
}
@test "(core) urls (app ssl)" {
assert_urls "http://${TEST_APP}.dokku.me"
run setup_test_tls
echo "output: $output"
echo "status: $status"
assert_success
run /bin/bash -c "dokku proxy:build-config $TEST_APP"
echo "output: $output"
echo "status: $status"
assert_success
assert_urls "https://${TEST_APP}.dokku.me"
run /bin/bash -c "dokku domains:add $TEST_APP test.dokku.me"
echo "output: $output"
echo "status: $status"
assert_success
assert_urls "http://${TEST_APP}.dokku.me" "https://${TEST_APP}.dokku.me" "https://test.dokku.me" "http://test.dokku.me"
}
@test "(core) url (app ssl)" {
run setup_test_tls
echo "output: $output"
echo "status: $status"
assert_success
run /bin/bash -c "dokku proxy:build-config $TEST_APP"
echo "output: $output"
echo "status: $status"
assert_success
assert_url "https://${TEST_APP}.dokku.me"
}
@test "(core) urls (wildcard ssl)" {
run setup_test_tls wildcard
echo "output: $output"
echo "status: $status"
assert_success
run /bin/bash -c "dokku proxy:build-config $TEST_APP"
echo "output: $output"
echo "status: $status"
assert_success
assert_urls "https://${TEST_APP}.dokku.me"
run /bin/bash -c "dokku domains:add $TEST_APP test.dokku.me"
echo "output: $output"
echo "status: $status"
assert_success
assert_urls "http://${TEST_APP}.dokku.me" "https://${TEST_APP}.dokku.me" "https://test.dokku.me" "http://test.dokku.me"
run /bin/bash -c "dokku domains:add $TEST_APP dokku.example.com"
echo "output: $output"
echo "status: $status"
assert_success
assert_urls "http://dokku.example.com" "http://${TEST_APP}.dokku.me" "https://dokku.example.com" "https://${TEST_APP}.dokku.me" "https://test.dokku.me" "http://test.dokku.me"
}
@test "(core) git-remote (off-port)" {
run deploy_app nodejs-express ssh://dokku@127.0.0.1:22333/$TEST_APP
echo "output: $output"
echo "status: $status"
assert_success
}
@test "(core) git-remote (bad name)" {
run deploy_app nodejs-express ssh://dokku@127.0.0.1:22333/home/dokku/$TEST_APP
echo "output: $output"
echo "status: $status"
assert_failure
}