Skip to content

Commit 8a765a6

Browse files
committed
Refactor tests using bats assertions and how it is done in other aljibe addons
1 parent 99ae7ac commit 8a765a6

File tree

1 file changed

+30
-18
lines changed

1 file changed

+30
-18
lines changed

tests/test.bats

Lines changed: 30 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,45 @@
1+
#!/usr/bin/env bats
2+
3+
# Standard DDEV add-on setup code taken from official DDEV add-ons.
14
setup() {
25
set -eu -o pipefail
3-
export DIR="$( cd "$( dirname "$BATS_TEST_FILENAME" )" >/dev/null 2>&1 && pwd )/.."
4-
export TESTDIR=~/tmp/test-mkdocs
5-
mkdir -p $TESTDIR
6-
export PROJNAME=test-mkdocs
7-
export DDEV_NON_INTERACTIVE=true
8-
ddev delete -Oy ${PROJNAME} >/dev/null 2>&1 || true
6+
export GITHUB_REPO=Metadrop/ddev-aljibe-assistant
7+
TEST_BREW_PREFIX="$(brew --prefix 2>/dev/null || true)"
8+
export BATS_LIB_PATH="${BATS_LIB_PATH}:${TEST_BREW_PREFIX}/lib:/usr/lib/bats"
9+
bats_load_library bats-assert
10+
bats_load_library bats-file
11+
bats_load_library bats-support
12+
13+
# shellcheck disable=SC2155
14+
export DIR="$(cd "$(dirname "${BATS_TEST_FILENAME}")/.." >/dev/null 2>&1 && pwd)"
15+
# shellcheck disable=SC2155
16+
export PROJNAME="test-$(basename "${GITHUB_REPO}")"
17+
18+
mkdir -p ~/tmp
19+
# shellcheck disable=SC2155
20+
export TESTDIR=$(mktemp -d ~/tmp/${PROJNAME}.XXXXXX)
21+
export DDEV_NONINTERACTIVE=true
22+
export DDEV_NO_INSTRUMENTATION=true
23+
ddev delete -Oy "${PROJNAME}" >/dev/null 2>&1 || true
24+
925
cd "${TESTDIR}"
10-
ddev config --project-name=${PROJNAME}
11-
ddev get metadrop/ddev-aljibe
12-
ddev start -y >/dev/null
13-
ddev aljibe-assistant --auto
26+
run ddev config --project-name="${PROJNAME}" --project-tld=ddev.site
27+
assert_success
28+
run ddev start -y
29+
assert_success
1430
}
1531

1632
health_checks() {
1733
echo "Checking mkdocs health" >&3
18-
ddev exec wget http://mkdocs:8000 -q -O - | grep Welcome | grep -m1 "Welcome to Mkdocs"
34+
run ddev exec wget http://mkdocs:8000 -q -O -
35+
assert_output --partial "Welcome to MkDocs"
1936
}
2037

2138
check_build_mkdocs() {
2239
echo "Checking mkdocs build" >&3
2340
ddev mkdocs build
2441
}
2542

26-
t() {
27-
set -eu -o pipefail
28-
cd ${TESTDIR} || ( printf "unable to cd to ${TESTDIR}\n" && exit 1 )
29-
ddev delete -Oy ${PROJNAME} >/dev/null 2>&1
30-
[ "${TESTDIR}" != "" ] && rm -rf ${TESTDIR}
31-
}
32-
3343
@test "Install from folder" {
3444
set -eu -o pipefail
3545
cd ${TESTDIR}
@@ -38,6 +48,8 @@ t() {
3848
echo "Installed add-on from directory, restarting ddev" >&3
3949
ddev restart
4050
echo "Testing mkdocs" >&3
51+
4152
health_checks
53+
4254
check_build_mkdocs
4355
}

0 commit comments

Comments
 (0)