#!/bin/bash # Repeatedly stop building until successive layers, and run all tests built. # # Test all layers: # test_layers # Test layers after x: # test_layers x # Test layers after x and until y (inclusive): # test_layers x y # Test all layers for a specific app: # test_layers app for f in [0-9]* do if [[ $f < $1 ]]; then continue; fi if [[ $2 && $f > $2 ]]; then exit 0; fi echo "=== $f" ./build_and_test_until $f || exit 1 done CXX=clang++ CFLAGS="-g -O3 -fsanitize=undefined -Wno-tautological-constant-out-of-range-compare" make VALGRIND="valgrind --leak-check=yes --num-callers=40 -q --error-exitcode=1" if [[ ! $1 || $1 == chessboard ]] then echo "=== chessboard" $VALGRIND ./mu_bin test chessboard.mu || exit 1 fi if [[ ! $1 || $1 == edit ]] then for f in edit/[0-9]* do echo "=== edit: until $f" $VALGRIND ./mu_bin test `echo edit/[0-9]* |perl -pwe "s,$f.*,$f,"` || exit 1 done fi