1610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanov#!/bin/sh
2610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanov
3610969f87667a485b9207086b3ff475bab909f95Evgeniy StepanovFAILED=
4610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanov
5610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanovfor TEST in "$@"
6610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanovdo
7610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanov  echo "=============================="
8610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanov  SUPP=
9610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanov  if [ -f output_tests/${TEST}.supp ]; then
10610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanov    SUPP=--suppressions=output_tests/${TEST}.supp
11610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanov  fi
12610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanov
13610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanov  IGNORE=
14610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanov  if [ -f output_tests/${TEST}.ignore ]; then
15610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanov    IGNORE=--ignore=output_tests/${TEST}.ignore
16610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanov  fi
17610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanov
18610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanov  CMD="$TSAN $SUPP $IGNORE -- ./${BIN}output_tests/${TEST}-${BUILD}${EXE} 2>&1 | python match_output.py output_tests/${TEST}.tmpl"
19610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanov  echo "Running"
20610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanov  echo "$ $CMD"
21610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanov  if $CMD ;
22610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanov  then
23610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanov    echo "[  PASS  ]"
24610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanov  else
25610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanov    echo "[ FAILED ]"
26610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanov    FAILED=yes
27610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanov  fi
28610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanov  echo "=============================="
29610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanov  echo
30610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanovdone
31610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanov
32610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanovif [ "$FAILED" == "yes" ]; then
33610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanov  exit 1
34610969f87667a485b9207086b3ff475bab909f95Evgeniy Stepanovfi
35