]> granicus.if.org Git - libevent/commit
regress: introduce TT_RETRIABLE
authorAzat Khuzhin <a3at.mail@gmail.com>
Mon, 19 Nov 2018 22:06:04 +0000 (01:06 +0300)
committerAzat Khuzhin <a3at.mail@gmail.com>
Tue, 20 Nov 2018 19:56:28 +0000 (22:56 +0300)
commit63b065be80d57dfee4688ddc32b8344e922648d9
tree4a0c909a8309b2259bf725b676b0efb4f96b8090
parent57765b23c81a9150ca0f77ed5f4d9b64a43cf30d
regress: introduce TT_RETRIABLE

We have some tests that has false-positive due to real/CPU time bound,
but they are pretty generic and we do not want to skip them by default.

TT_RETRIABLE is the flag that will indicate tinytest to retry the test
in case of failure, use it to avoid next possible false-positives:
- real time-related
- CPU time-related
Since I guess it is better to see/grepping RETRYING messages over
ignoring completely failed builds.

No configuration switch for number of retries was done on purpose (only
3 retries and no more).

And this is how it looks BTW:
  $ gcc ../test/tinytest_demo.c ../test/tinytest.c
  $ ./a.out --verbose --no-fork
  demo/timeout_retry
  demo/timeout_retry:
    FAIL ../test/tinytest_demo.c:201: assert(i != 1): 1 vs 1
    [timeout_retry FAILED]

    [RETRYING timeout_retry (3)]
  demo/timeout_retry:
           OK ../test/tinytest_demo.c:201: assert(i != 1): 2 vs 1
           OK ../test/tinytest_demo.c:213: assert(t2-t1 >= 4): 5 vs 4
           OK ../test/tinytest_demo.c:215: assert(t2-t1 <= 6): 5 vs 6
  1 tests ok.  (0 skipped)
test/tinytest.c
test/tinytest.h
test/tinytest_demo.c