Files
dokku-mysql/tests/service_import.bats
2019-03-09 16:39:34 -05:00

38 lines
1.2 KiB
Bash
Executable File

#!/usr/bin/env bats
load test_helper
setup() {
export ECHO_DOCKER_COMMAND="false"
dokku "$PLUGIN_COMMAND_PREFIX:create" l >&2
echo "data" > "$PLUGIN_DATA_ROOT/fake.sql"
}
teardown() {
export ECHO_DOCKER_COMMAND="false"
dokku --force "$PLUGIN_COMMAND_PREFIX:destroy" l >&2
rm -f "$PLUGIN_DATA_ROOT/fake.sql"
}
@test "($PLUGIN_COMMAND_PREFIX:import) error when there are no arguments" {
run dokku "$PLUGIN_COMMAND_PREFIX:import"
assert_contains "${lines[*]}" "Please specify a valid name for the service"
}
@test "($PLUGIN_COMMAND_PREFIX:import) error when service does not exist" {
run dokku "$PLUGIN_COMMAND_PREFIX:import" not_existing_service
assert_contains "${lines[*]}" "service not_existing_service does not exist"
}
@test "($PLUGIN_COMMAND_PREFIX:import) error when data is not provided" {
run dokku "$PLUGIN_COMMAND_PREFIX:import" l
assert_contains "${lines[*]}" "No data provided on stdin"
}
@test "($PLUGIN_COMMAND_PREFIX:import) success" {
export ECHO_DOCKER_COMMAND="true"
run dokku "$PLUGIN_COMMAND_PREFIX:import" l < "$PLUGIN_DATA_ROOT/fake.sql"
password="$(cat "$PLUGIN_DATA_ROOT/l/ROOTPASSWORD")"
assert_output "docker exec -i dokku.mysql.l mysql --user=root --password=$password l"
}