docs/test/integration/core/core-commands.bats

157 lines
3.2 KiB
Bash

#!/usr/bin/env bats
load ${BASE_TEST_DIR}/helpers.bash
use_shared_machine
@test "$DRIVER: machine should not exist" {
run machine inspect UNKNOWN
echo ${output}
[ "$status" -eq 1 ]
[[ ${lines[0]} =~ "Host does not exist: \"UNKNOWN\"" ]]
}
@test "$DRIVER: appears with ls" {
run machine ls -q
echo ${output}
[ "$status" -eq 0 ]
[[ ${lines[0]} == "$NAME" ]]
}
@test "$DRIVER: has status 'started' appearing in ls" {
run machine ls -q --filter state=Running
echo ${output}
[ "$status" -eq 0 ]
[[ ${lines[0]} == "$NAME" ]]
}
@test "$DRIVER: create with same name again fails" {
run machine create -d $DRIVER $NAME
echo ${output}
[ "$status" -eq 1 ]
[[ ${lines[0]} == "Host already exists: \"$NAME\"" ]]
}
@test "$DRIVER: run busybox container" {
run docker $(machine config $NAME) run busybox echo hello world
echo ${output}
[ "$status" -eq 0 ]
}
@test "$DRIVER: url" {
run machine url $NAME
echo ${output}
[ "$status" -eq 0 ]
}
@test "$DRIVER: ip" {
run machine ip $NAME
echo ${output}
[ "$status" -eq 0 ]
}
@test "$DRIVER: ssh" {
run machine ssh $NAME -- ls -lah /
echo ${output}
[ "$status" -eq 0 ]
[[ ${lines[0]} =~ "total" ]]
}
@test "$DRIVER: version" {
run machine version $NAME
echo ${output}
[ "$status" -eq 0 ]
}
@test "$DRIVER: docker commands with the socket should work" {
run machine ssh $NAME -- sudo docker version
echo ${output}
}
@test "$DRIVER: stop" {
run machine stop $NAME
echo ${output}
[ "$status" -eq 0 ]
}
@test "$DRIVER: machine should show stopped after stop" {
run machine ls
echo ${output}
[ "$status" -eq 0 ]
[[ ${lines[1]} == *"Stopped"* ]]
}
@test "$DRIVER: url should show an error when machine is stopped" {
run machine url $NAME
echo ${output}
[ "$status" -eq 1 ]
[[ ${output} == *"not running"* ]]
}
@test "$DRIVER: env should show an error when machine is stopped" {
run machine env $NAME
echo ${output}
[ "$status" -eq 1 ]
[[ ${output} == *"not running. Please start"* ]]
}
@test "$DRIVER: version should show an error when machine is stopped" {
run machine version $NAME
echo ${output}
[ "$status" -eq 1 ]
[[ ${output} == *"not running"* ]]
}
@test "$DRIVER: machine should not allow upgrade when stopped" {
run machine upgrade $NAME
echo ${output}
[[ "$status" -eq 1 ]]
}
@test "$DRIVER: start" {
run machine start $NAME
echo ${output}
[ "$status" -eq 0 ]
}
@test "$DRIVER: machine should show running after start" {
run machine ls --timeout 20
echo ${output}
[ "$status" -eq 0 ]
[[ ${lines[1]} == *"Running"* ]]
}
@test "$DRIVER: kill" {
run machine kill $NAME
echo ${output}
[ "$status" -eq 0 ]
}
@test "$DRIVER: machine should show stopped after kill" {
run machine ls
echo ${output}
[ "$status" -eq 0 ]
[[ ${lines[1]} == *"Stopped"* ]]
}
@test "$DRIVER: restart" {
run machine restart $NAME
echo ${output}
[ "$status" -eq 0 ]
}
@test "$DRIVER: machine should show running after restart" {
run machine ls --timeout 20
echo ${output}
[ "$status" -eq 0 ]
[[ ${lines[1]} == *"Running"* ]]
}
@test "$DRIVER: status" {
run machine status $NAME
echo ${output}
[ "$status" -eq 0 ]
[[ ${output} == *"Running"* ]]
}