X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/86051ed1b66342bae0e21fd6643e66331ac2c07d..f7d6b6bfb8f2e3c83e87a73baebc5b19713cdd7d:/tools/tesh/catch-signal.tesh diff --git a/tools/tesh/catch-signal.tesh b/tools/tesh/catch-signal.tesh index 4fc075402e..e835b01c64 100644 --- a/tools/tesh/catch-signal.tesh +++ b/tools/tesh/catch-signal.tesh @@ -2,25 +2,25 @@ # 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 -$ mkdir temp_testdir +$ cmake -E remove_directory temp_testdir-catch-signal +$ mkdir temp_testdir-catch-signal -$ cd temp_testdir -< #include -< int main(void) { -< char *A=NULL; -< *A = 1; -< } -$ cat > segfault.c +$ cd temp_testdir-catch-signal -$ gcc -o segfault segfault.c +< kill 'SEGV', $$; +$ mkfile segfault.pl -! expect return 15 -< $ ./segfault -$ ../tesh -> [0.000000] [tesh/INFO] Test suite from stdin -> [0.000000] [tesh/INFO] [stdin:1] ./segfault -> [0.000000] run_context.c:350: [tesh/ERROR] Child "./segfault" got signal SIGSEGV. +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] perl segfault.pl +> Test suite `(stdin)': NOK (<(stdin):1> got signal SIGSEGV) $ cd .. -$ rm -rf temp_testdir +$ cmake -E remove_directory temp_testdir-catch-signal