diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..7ae60e6 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "tests/helpers/mocks"] + path = tests/helpers/mocks + url = https://github.com/Flamefire/bats-mock.git diff --git a/tests/02_abra.bats b/tests/02_abra.bats index 1821253..d626dd3 100644 --- a/tests/02_abra.bats +++ b/tests/02_abra.bats @@ -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 secret (insert|generate|rm)" { diff --git a/tests/test_helper.bash b/tests/test_helper.bash new file mode 100644 index 0000000..4d64160 --- /dev/null +++ b/tests/test_helper.bash @@ -0,0 +1 @@ +load helpers/mocks/src/stub