abra/tests/integration/server_list.bats

76 lines
1.4 KiB
Bash

#!/usr/bin/env bash
setup_file(){
load "$PWD/tests/integration/helpers/common"
_common_setup
_add_server
}
teardown_file(){
_rm_server
}
setup(){
load "$PWD/tests/integration/helpers/common"
_common_setup
}
@test "list server" {
run "$ABRA" server ls
assert_success
assert_output --partial "$TEST_SERVER"
}
@test "show 'local' when --local server created" {
run docker swarm init
assert_success
run $ABRA server add --local
assert_success
assert_exists "$ABRA_DIR/servers/default"
run "$ABRA" server ls
assert_success
assert_output --partial 'default'
assert_output --partial 'local'
assert_output --partial 'n/a'
run docker swarm leave --force
assert_success
_rm_default_server
}
@test "filter by problem" {
run "$ABRA" server ls --problems
assert_success
assert_output --partial 'all servers wired up correctly'
run docker context create --docker host=ssh://incorrect nowhere.com
assert_success
run mkdir -p "$ABRA_DIR/servers/nowhere.com"
assert_success
run "$ABRA" server ls --problems
assert_success
assert_output --partial 'unknown'
run rm -rf "$ABRA_DIR/servers/nowhere.com"
assert_success
run docker context rm nowhere.com
assert_success
}
@test "machine readable output" {
run "$ABRA" server ls --machine
assert_success
expectedOutput='[{"name":"'
expectedOutput+="$TEST_SERVER"
expectedOutput+='"'
assert_output --partial "$expectedOutput"
}