test: Run selected noninteractive tests at build-time
In Autotools, these are run by `make -C ${builddir}/test check`.
In CMake, they're run by `make -C ${builddir} test` or
`ninja -C ${builddir} test` or `ctest --test-dir ${builddir}`.
Signed-off-by: Simon McVittie <smcv@collabora.com>
This commit is contained in:
committed by
Sam Lantinga
parent
b299f74d05
commit
7d2808e30b
@@ -351,6 +351,49 @@ distclean: clean
|
||||
rm -f config.status config.cache config.log
|
||||
rm -rf $(srcdir)/autom4te*
|
||||
|
||||
noninteractive = \
|
||||
testatomic$(EXE) \
|
||||
testerror$(EXE) \
|
||||
testevdev$(EXE) \
|
||||
testfilesystem$(EXE) \
|
||||
testkeys$(EXE) \
|
||||
testlocale$(EXE) \
|
||||
testplatform$(EXE) \
|
||||
testpower$(EXE) \
|
||||
testqsort$(EXE) \
|
||||
testthread$(EXE) \
|
||||
testtimer$(EXE) \
|
||||
testver$(EXE) \
|
||||
$(NULL)
|
||||
|
||||
needs_audio = \
|
||||
testaudioinfo$(EXE) \
|
||||
testsurround$(EXE) \
|
||||
$(NULL)
|
||||
|
||||
needs_display = \
|
||||
testbounds$(EXE) \
|
||||
testdisplayinfo$(EXE) \
|
||||
$(NULL)
|
||||
|
||||
TESTS = $(noninteractive) $(needs_audio) $(needs_display)
|
||||
|
||||
check:
|
||||
@set -e; \
|
||||
status=0; \
|
||||
export SDL_AUDIODRIVER=dummy; \
|
||||
export SDL_VIDEODRIVER=dummy; \
|
||||
for exe in $(TESTS); do \
|
||||
echo "$$exe..."; \
|
||||
if ./"$$exe"; then \
|
||||
echo "$$exe: OK"; \
|
||||
else \
|
||||
echo "$$exe: FAILED: $$?"; \
|
||||
status=1; \
|
||||
fi; \
|
||||
done; \
|
||||
exit "$$status"
|
||||
|
||||
DATA = \
|
||||
axis.bmp \
|
||||
button.bmp \
|
||||
|
||||
Reference in New Issue
Block a user