Use bats-mock
This commit is contained in:
3
.gitmodules
vendored
Normal file
3
.gitmodules
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
[submodule "tests/helpers/mocks"]
|
||||
path = tests/helpers/mocks
|
||||
url = https://github.com/Flamefire/bats-mock.git
|
@ -1,37 +1,48 @@
|
||||
#!/usr/bin/env bats
|
||||
|
||||
load test_helper
|
||||
|
||||
setup() {
|
||||
mkdir -p ~/.abra/servers/default
|
||||
export ABRA_DIR=$(mktemp -d)
|
||||
export DOCKER_STUB_DEBUG=foo
|
||||
mkdir -p $ABRA_DIR/servers/default
|
||||
stub docker \
|
||||
"context create * --docker * : touch $ABRA_DIR/context" \
|
||||
'context ls : echo "swarm.test.com"' \
|
||||
"context rm * : rm $ABRA_DIR/context" \
|
||||
"context create * --docker * : touch $ABRA_DIR/context" \
|
||||
"context rm * : rm $ABRA_DIR/context"
|
||||
}
|
||||
|
||||
teardown() {
|
||||
rm -rf ~/.abra/servers/default
|
||||
rm -rf ~/.abra/servers/swarm.test.com
|
||||
#unstub docker
|
||||
#rm -rf "$ABRA_DIR"
|
||||
echo "foo"
|
||||
}
|
||||
|
||||
@test "abra server add/rm works" {
|
||||
./abra server add swarm.test.com
|
||||
docker context ls | grep swarm.test.com
|
||||
[ -d ~/.abra/servers/swarm.test.com ]
|
||||
[ -d $ABRA_DIR/servers/swarm.test.com ]
|
||||
./abra server rm swarm.test.com
|
||||
|
||||
./abra server add swarm.test.com foobar 12345
|
||||
[ -d ~/.abra/servers/swarm.test.com ]
|
||||
[ -d $ABRA_DIR/servers/swarm.test.com ]
|
||||
./abra server rm swarm.test.com
|
||||
}
|
||||
|
||||
@test "abra app new/rm works" {
|
||||
./abra app new --server default --domain traefik.test.com traefik
|
||||
[ -f ~/.abra/servers/default/traefik.test.com.env ]
|
||||
[ -f $ABRA_DIR/servers/default/traefik.test.com.env ]
|
||||
|
||||
# interactive prompt
|
||||
echo "y" | ./abra app traefik.test.com delete
|
||||
[ ! -f ~/.abra/servers/default/traefik.test.com.env ]
|
||||
[ ! -f $ABRA_DIR/servers/default/traefik.test.com.env ]
|
||||
|
||||
# --force
|
||||
./abra app new --server default --domain traefik.test.com traefik
|
||||
./abra app traefik.test.com delete --force
|
||||
[ ! -f ~/.abra/servers/default/traefik.test.com.env ]
|
||||
[ ! -f $ABRA_DIR/servers/default/traefik.test.com.env ]
|
||||
}
|
||||
|
||||
@test "abra app <domain> secret (insert|generate|rm)" {
|
||||
|
1
tests/test_helper.bash
Normal file
1
tests/test_helper.bash
Normal file
@ -0,0 +1 @@
|
||||
load helpers/mocks/src/stub
|
Reference in New Issue
Block a user