mirror of
https://github.com/jimeh/stub.sh.git
synced 2026-02-19 13:46:40 +00:00
Use test-runner.sh instead of homegrown test.sh
This commit is contained in:
3
.gitignore
vendored
3
.gitignore
vendored
@@ -1 +1,2 @@
|
|||||||
test/assert.sh
|
test/assert.sh
|
||||||
|
test-runner.sh
|
||||||
40
Makefile
40
Makefile
@@ -1,12 +1,38 @@
|
|||||||
test: prepare
|
test: bootstrap
|
||||||
./test.sh
|
./test-runner.sh
|
||||||
|
|
||||||
prepare:
|
bootstrap: test-runner.sh test/assert.sh
|
||||||
test -f "test/assert.sh" || ( \
|
|
||||||
|
clean: remove-test-runner.sh remove-assert.sh
|
||||||
|
|
||||||
|
test/assert.sh:
|
||||||
|
test -f "test/assert.sh" || \
|
||||||
echo "fetching assert.sh..." && \
|
echo "fetching assert.sh..." && \
|
||||||
curl -s -L -o test/assert.sh \
|
curl -s -L -o test/assert.sh \
|
||||||
https://raw.github.com/lehmannro/assert.sh/v1.0.2/assert.sh \
|
https://raw.github.com/lehmannro/assert.sh/v1.0.2/assert.sh
|
||||||
)
|
|
||||||
|
update-assert.sh: remove-assert.sh test/assert.sh
|
||||||
|
|
||||||
|
remove-assert.sh:
|
||||||
|
( \
|
||||||
|
test -f "test/assert.sh" && rm "test/assert.sh" && \
|
||||||
|
echo "removed test/assert.sh"\
|
||||||
|
) || exit 0
|
||||||
|
|
||||||
|
test-runner.sh:
|
||||||
|
test -f "test-runner.sh" || \
|
||||||
|
echo "fetching test-runner.sh..." && \
|
||||||
|
curl -s -L -o test-runner.sh \
|
||||||
|
https://github.com/jimeh/test-runner.sh/raw/v0.1.0/test-runner.sh && \
|
||||||
|
chmod +x test-runner.sh
|
||||||
|
|
||||||
|
remove-test-runner.sh:
|
||||||
|
( \
|
||||||
|
test -f "test-runner.sh" && rm "test-runner.sh" && \
|
||||||
|
echo "removed test-runner.sh"\
|
||||||
|
) || exit 0
|
||||||
|
|
||||||
|
update-test-runner.sh: remove-test-runner.sh test-runner.sh
|
||||||
|
|
||||||
.SILENT:
|
.SILENT:
|
||||||
.PHONY: test prepare
|
.PHONY: test bootstrap
|
||||||
|
|||||||
34
test.sh
34
test.sh
@@ -1,34 +0,0 @@
|
|||||||
#! /usr/bin/env bash
|
|
||||||
|
|
||||||
resolve_link() {
|
|
||||||
$(type -p greadlink readlink | head -1) $1
|
|
||||||
}
|
|
||||||
|
|
||||||
abs_dirname() {
|
|
||||||
local cwd="$(pwd)"
|
|
||||||
local path="$1"
|
|
||||||
|
|
||||||
while [ -n "$path" ]; do
|
|
||||||
cd "${path%/*}"
|
|
||||||
local name="${path##*/}"
|
|
||||||
path="$(resolve_link "$name" || true)"
|
|
||||||
done
|
|
||||||
|
|
||||||
pwd
|
|
||||||
cd "$cwd"
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
testdir="$(abs_dirname "$0")/test"
|
|
||||||
testfiles="$(find "$testdir" -name "*-test.sh")"
|
|
||||||
|
|
||||||
RET=0
|
|
||||||
for testfile in $testfiles; do
|
|
||||||
echo ""
|
|
||||||
echo "running: ${testfile/#$(dirname "$testdir")\//}"
|
|
||||||
cd "$(dirname "$testfile")"
|
|
||||||
"$testfile"
|
|
||||||
if [ "$?" != "0" ]; then RET=1; fi
|
|
||||||
done
|
|
||||||
echo ""
|
|
||||||
exit $RET
|
|
||||||
Reference in New Issue
Block a user