tests: Add a stub test framework

Imported a little bit of code from OSTree's shell `libtest.sh`.  I'm
mostly doing this to test Travis and Homu, but hey, we get a little
bit of coverage.

Pull request: #21
Approved by: alexlarsson
This commit is contained in:
Colin Walters
2016-03-15 09:18:36 -04:00
committed by Colin Walters (automation)
parent bf3ae2166f
commit e06ff186ce
2 changed files with 38 additions and 0 deletions

View File

@@ -13,3 +13,6 @@ test-setcaps: bwrap
sudo setcap "cap_sys_admin+ep cap_sys_chroot+ep" bwrap sudo setcap "cap_sys_admin+ep cap_sys_chroot+ep" bwrap
include Makefile-docs.am include Makefile-docs.am
TESTS = tests/test-basic.sh
TESTS_ENVIRONMENT = PATH=$$(cd $(top_builddir) && pwd):$${PATH}

35
tests/test-basic.sh Executable file
View File

@@ -0,0 +1,35 @@
#!/bin/bash
set -xeuo pipefail
srcd=$(cd $(dirname $0) && pwd)
bn=$(basename $0)
tempdir=$(mktemp -d /var/tmp/tap-test.XXXXXX)
touch ${tempdir}/.testtmp
function cleanup () {
if test -n "${TEST_SKIP_CLEANUP:-}"; then
echo "Skipping cleanup of ${test_tmpdir}"
else if test -f ${tempdir}/.test; then
rm "${tempdir}" -rf
fi
fi
}
trap cleanup EXIT
cd ${tempdir}
assert_not_reached () {
echo $@ 1>&2; exit 1
}
assert_file_has_content () {
if ! grep -q -e "$2" "$1"; then
echo 1>&2 "File '$1' doesn't match regexp '$2'"; exit 1
fi
}
# At the moment we're testing in Travis' container infrastructure
# which also uses PR_SET_NO_NEW_PRIVS...but let's at least
# verify --help works!
bwrap --help >out.txt 2>&1
assert_file_has_content out.txt "--lock-file"