|
1 | 1 | #!/bin/bash
|
2 | 2 |
|
3 |
| -# copying from run-ci.sh |
4 |
| -export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:$(ocamlfind query z3) |
5 |
| -export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$(ocamlfind query z3) |
6 |
| -CN=$OPAM_SWITCH_PREFIX/bin/cn |
| 3 | +cd cn-test-gen |
7 | 4 |
|
8 |
| -DIRNAME=$(dirname "$0") |
9 |
| - |
10 |
| -# Clean directory |
11 |
| -cd "$DIRNAME"/cn-test-gen || exit |
12 |
| -rm -rf build decorated test |
13 |
| -mkdir build decorated test |
14 |
| - |
15 |
| -# For UBSan |
16 |
| -export UBSAN_OPTIONS=halt_on_error=1 |
17 |
| - |
18 |
| -# Get `*.c` files |
19 |
| -FILES=$(find "$DIRNAME"/src -name '*.c') |
20 |
| - |
21 |
| -# Track failures |
22 |
| -NUM_FAILED=0 |
23 |
| -FAILED='' |
24 |
| - |
25 |
| -function separator() { |
26 |
| - printf '\n' |
27 |
| - for i in {1..60}; do |
28 |
| - printf "=" |
29 |
| - done |
30 |
| - printf '\n\n' |
31 |
| -} |
32 |
| - |
33 |
| -CONFIGS=("--sized-null --sizing-strategy 0" "--coverage --sizing-strategy 1" "--with-static-hack --coverage --sanitize=undefined --sizing-strategy 2" "--random-size-splits" "--random-size-splits --allowed-size-split-backtracks=10") |
34 |
| - |
35 |
| -# For each configuration |
36 |
| -for CONFIG in "${CONFIGS[@]}"; do |
37 |
| - separator |
38 |
| - echo "Running CI with CLI config \"$CONFIG\"" |
39 |
| - separator |
40 |
| - |
41 |
| - FULL_CONFIG="$CONFIG --input-timeout=1000 --progress-level=1" |
42 |
| - |
43 |
| - # Test each `*.c` file |
44 |
| - for TEST in $FILES; do |
45 |
| - CLEANUP="rm -rf test/* run_tests.sh;separator" |
46 |
| - |
47 |
| - # Run passing tests |
48 |
| - if [[ $TEST == *.pass.c ]]; then |
49 |
| - $CN test "$TEST" --output-dir="test" $FULL_CONFIG |
50 |
| - RET=$? |
51 |
| - if [[ "$RET" != 0 ]]; then |
52 |
| - echo |
53 |
| - echo "$TEST -- Tests failed unexpectedly" |
54 |
| - NUM_FAILED=$(($NUM_FAILED + 1)) |
55 |
| - FAILED="$FAILED $TEST($CONFIG)" |
56 |
| - eval "$CLEANUP" |
57 |
| - continue |
58 |
| - else |
59 |
| - echo |
60 |
| - echo "$TEST -- Tests passed successfully" |
61 |
| - fi |
62 |
| - fi |
63 |
| - |
64 |
| - # Run failing tests |
65 |
| - if [[ $TEST == *.fail.c ]]; then |
66 |
| - $CN test "$TEST" --output-dir="test" $FULL_CONFIG |
67 |
| - RET=$? |
68 |
| - if [[ "$RET" = 0 ]]; then |
69 |
| - echo |
70 |
| - echo "$TEST -- Tests passed unexpectedly" |
71 |
| - NUM_FAILED=$(($NUM_FAILED + 1)) |
72 |
| - FAILED="$FAILED $TEST($CONFIG)" |
73 |
| - eval "$CLEANUP" |
74 |
| - continue |
75 |
| - else |
76 |
| - echo |
77 |
| - echo "$TEST -- Tests failed successfully" |
78 |
| - fi |
79 |
| - fi |
80 |
| - |
81 |
| - eval "$CLEANUP" |
82 |
| - done |
83 |
| -done |
84 |
| - |
85 |
| -echo 'Done running tests.' |
86 |
| -echo |
87 |
| - |
88 |
| -if [ -z "$FAILED" ]; then |
89 |
| - echo "All tests passed." |
90 |
| - exit 0 |
91 |
| -else |
92 |
| - echo "$NUM_FAILED tests failed:" |
93 |
| - echo " $FAILED" |
94 |
| - exit 1 |
95 |
| -fi |
| 5 | +make -j |
0 commit comments