source: src/tests/runTests.sh @ 1e37d4d

ADTaaron-thesisarm-ehast-experimentalcleanup-dtorsctordeferred_resndemanglerenumforall-pointer-decaygc_noraiijacob/cs343-translationjenkins-sandboxmemorynew-astnew-ast-unique-exprnew-envno_listpersistent-indexerpthread-emulationqualifiedEnumresolv-newwith_gc
Last change on this file since 1e37d4d was 1e37d4d, checked in by Thierry Delisle <tdelisle@…>, 8 years ago

moved some of the tests in examples to new test folder

  • Property mode set to 100755
File size: 1.9 KB
RevLine 
[70d4b4f]1#!/bin/bash
2
3##############################################################################
4#
5# Cforall Version 1.0.0 Copyright (C) 2015 University of Waterloo
6#
7# The contents of this file are covered under the licence agreement in the
8# file "LICENCE" distributed with Cforall.
9#
10# Runs integration tests for cfa-cc.
11#
12# Output of test run will be copied into $logfile (default: tests/log.txt).
13# Build failures for tests will be placed in tests/$test.make.txt, incorrect
14# output in tests/$test.run.txt.
15#
16# Author           : Aaron B. Moss
17# Created On       : Mon Nov 23 14:19:00 2015
18# Last Modified By : Aaron B. Moss
19# Last Modified On : Mon Nov 23 14:19:00 2015
20# Update Count     : 1
21#
22##############################################################################
23
24# list of tests to run;
25# Should be a make target for each test that generates an executable in the
26# current directory named the same; should also be an input file
27# tests/$test.in.txt and expected output tests/$test.out.txt
[6e3ae00]28tests="vector_test avl_test"
[70d4b4f]29
30# log file for test output;
31# reset at the beginning of each run
32logfile=tests/log.txt
33touch $logfile && rm $logfile
34
35# clean existing build artifacts before run
36make clean > /dev/null 2>&1
37
[353f395]38ret_val=0
39
[70d4b4f]40for test in $tests; do
41        echo -n "    $test" | tee -a $logfile
[6e3ae00]42
[70d4b4f]43        # build, skipping to next test on error
[6e3ae00]44        if ! make -j 8 $test > tests/$test.make.txt 2>&1; then
[353f395]45                ret_val=1
[70d4b4f]46                echo -e "\tFAILED with build error:" | tee -a $logfile
47                cat tests/$test.make.txt | tee -a $logfile
48                continue
49        fi
50        rm tests/$test.make.txt
51
52        # run, testing against expected output
53        ./$test < tests/$test.in.txt > tests/$test.run.txt 2>&1
54        if ! diff tests/$test.out.txt tests/$test.run.txt > tests/$test.diff.txt; then
[353f395]55                ret_val=1
[70d4b4f]56                echo -e "\tFAILED with output mismatch:" | tee -a $logfile
57                cat tests/$test.diff.txt | tee -a $logfile
58                continue
59        fi
60        rm tests/$test.run.txt tests/$test.diff.txt ./$test
61
62        echo -e "\tPASSED" | tee -a $logfile
63done
[353f395]64
65exit $((ret_val))
Note: See TracBrowser for help on using the repository browser.