tests: separate tests that need to run on z80 vs those that don't

This commit is contained in:
Virgil Dupras 2020-06-27 07:41:42 -04:00
parent ceabc9920f
commit 785b375028
11 changed files with 35 additions and 8 deletions

View File

@ -4,8 +4,6 @@ git submodule init
git submodule update
git clean -fxd
make -C cvm
make -C emul
make -C tests
# verify that forth.bin is stable

View File

@ -1,6 +1,9 @@
EMULDIR = ../emul
CDIR = ../cvm
EDIR = ../emul
.PHONY: run
run:
$(MAKE) -C $(EMULDIR) all
cd forth && ./runtests.sh
$(MAKE) -C $(CDIR) all
$(MAKE) -C $(EDIR) all
cd cvm && ./runtests.sh
cd z80 && ./runtests.sh

View File

@ -1,4 +1,4 @@
# Testing Collapse OS
This folder contains Collapse OS' automated testing suite. To run, it needs
`/emul` to be built. You can run all tests with `make`.
This folder contains Collapse OS' automated testing suite. You can run all tests
with `make`.

26
tests/cvm/runtests.sh Executable file
View File

@ -0,0 +1,26 @@
#!/bin/sh -e
BASE=../..
EXEC="${BASE}/cvm/forth"
TMP=$(mktemp)
chk() {
echo "Running test $1"
cat ../harness.fs $1 > ${TMP}
if ! ${EXEC} ${TMP}; then
exit 1
fi
}
if [ ! -z $1 ]; then
chk $1
exit 0
fi
# those tests run without any builtin
for fn in test_*.fs; do
chk "${fn}"
done
echo "All tests passed!"
rm ${TMP}

View File

@ -6,7 +6,7 @@ TMP=$(mktemp)
chk() {
echo "Running test $1"
cat harness.fs $1 > ${TMP}
cat ../harness.fs $1 > ${TMP}
if ! ${EXEC} ${TMP}; then
exit 1
fi