X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/f783ed4680c6862a1b7543237e89d1221334bae0..88fad0aaff9eb463f048bfdfe4ad6218aba44ddb:/tools/tesh/catch-signal.tesh diff --git a/tools/tesh/catch-signal.tesh b/tools/tesh/catch-signal.tesh index 7cde9813b1..2799b4f0d9 100644 --- a/tools/tesh/catch-signal.tesh +++ b/tools/tesh/catch-signal.tesh @@ -1,29 +1,30 @@ -#! ./tesh +#!/usr/bin/env tesh # This suite builds and uses a program raising a segfault, ie a program dying # of SIGSEV. tesh must detect this condition and report the issue. -$ rm -rf temp_testdir-catch-signal +! output ignore +$ cmake -E remove_directory temp_testdir-catch-signal + $ mkdir temp_testdir-catch-signal $ cd temp_testdir-catch-signal -< #include -< int main(void) { -< char *A=NULL; -< *A = 1; -< } -$ mkfile segfault.c - -$ gcc -o segfault segfault.c - -! expect return 15 -< $ ./segfault -$ ../tesh --enable-coverage --log='log.thresh:info tesh.fmt:%m%n' -> Enable coverage + +< kill 'SEGV', $$; +$ mkfile segfault.pl + +p Check that we notice when SEGV is raised +! expect signal SIGSEGV +$ perl segfault.pl + +p Check that we return the expected return value on SEGV +! expect return 11 +< $ perl segfault.pl +$ ${bindir:=.}/tesh > Test suite from stdin -> [(stdin):1] ./segfault +> [(stdin):1] perl segfault.pl > Test suite `(stdin)': NOK (<(stdin):1> got signal SIGSEGV) -> Output of <(stdin):1> so far: -> || $ cd .. -$ rm -rf temp_testdir-catch-signal + +! output ignore +$ cmake -E remove_directory temp_testdir-catch-signal