This is the test suite of my programming language called grug.
- Clone this repository and
cd
into it. - Run
git submodule update --init
to clone thegrug.c
andgrug.h
files (for your own game you can just drop these files directly into your project). - Run the tests with
./tests.sh
.
Check the terminal or the generated results
directory in tests to inspect any errors.
If a test failed, you can reproduce it by replacing time(NULL)
in main()
with the failing test's printed seed.
If you're using a Debian-based distribution like Ubuntu 22.04, you might need to run sudo sysctl vm.mmap_rnd_bits=28
to fix address sanitizer, which tests.sh
uses. See this GitHub thread for context.
If the tests don't pass, try running OLD_LD= ./tests.sh
.
tests.sh
requires and has been tested with:
- NASM version 2.15.05 (
nasm_2.15.05-1_amd64.deb
in my case) - GNU ld (GNU Binutils for Ubuntu) 2.38
- valgrind (valgrind-3.18.1)
See the development.md
file in this repository.