If a test hangs, TestWebKitAPI will never exit and run-api-tests will hang forever. TestWebKitAPI should detect when a test hangs and print out a failure message.
<rdar://problem/8630444>
Created attachment 93953 [details] Adding hang-detection to run-api-tests I returned back to running tests one-by-one and original run-api-tests output format.
Comment on attachment 93953 [details] Adding hang-detection to run-api-tests Can we do this in two pieces? 1) Go back to running tests singly, 2) add hang detection? It's hard to review both at once.
(In reply to comment #3) > (From update of attachment 93953 [details]) > Can we do this in two pieces? 1) Go back to running tests singly, 2) add hang detection? It's hard to review both at once. sure - do you want a separate issue for the 1st?
(In reply to comment #4) > (In reply to comment #3) > > (From update of attachment 93953 [details] [details]) > > Can we do this in two pieces? 1) Go back to running tests singly, 2) add hang detection? It's hard to review both at once. > > sure - do you want a separate issue for the 1st? Doesn't matter to me. Thanks!
Created attachment 94152 [details] New, smaller patch
Comment on attachment 94152 [details] New, smaller patch View in context: https://bugs.webkit.org/attachment.cgi?id=94152&action=review > Tools/Scripts/run-api-tests:177 > + eval { > + local $SIG{ALRM} = sub { die "alarm\n" }; > + alarm $timeout; > + waitpid($pid, 0); > + alarm 0; > + $result = $?; > + }; > + if ($@) { > + die unless $@ eq "alarm\n"; > + kill SIGTERM, $pid or kill SIGKILL, $pid; > + $timedOut = 1; > + }; It's too bad we can't share more of this code between Mac and Windows. No need for the semicolon after the if braces. > Tools/Scripts/run-api-tests:196 > + if ($@) { > + die unless $@ eq "alarm\n"; > + $timedOut = 1; > + }; No need for the semicolon after the closing brace.
Comment on attachment 94152 [details] New, smaller patch Clearing flags on attachment: 94152 Committed r86922: <http://trac.webkit.org/changeset/86922>
All reviewed patches have been landed. Closing bug.