File tree Expand file tree Collapse file tree 1 file changed +14
-2
lines changed
Expand file tree Collapse file tree 1 file changed +14
-2
lines changed Original file line number Diff line number Diff line change @@ -270,7 +270,7 @@ def test_process(self):
270270
271271 @classmethod
272272 def _test_terminate (cls ):
273- time .sleep (1000 )
273+ time .sleep (100 )
274274
275275 def test_terminate (self ):
276276 if self .TYPE == 'threads' :
@@ -296,7 +296,19 @@ def test_terminate(self):
296296
297297 p .terminate ()
298298
299- self .assertEqual (join (), None )
299+ if hasattr (signal , 'alarm' ):
300+ def handler (* args ):
301+ raise RuntimeError ('join took too long: pid=%s' % p .pid )
302+ old_handler = signal .signal (signal .SIGALRM , handler )
303+ try :
304+ signal .alarm (10 )
305+ self .assertEqual (join (), None )
306+ signal .alarm (0 )
307+ finally :
308+ signal .signal (signal .SIGALRM , old_handler )
309+ else :
310+ self .assertEqual (join (), None )
311+
300312 self .assertTimingAlmostEqual (join .elapsed , 0.0 )
301313
302314 self .assertEqual (p .is_alive (), False )
You can’t perform that action at this time.
0 commit comments