forked from OSchip/llvm-project
34 lines
1.0 KiB
Plaintext
34 lines
1.0 KiB
Plaintext
"""Tests that a timeout is detected by the testbot."""
|
|
from __future__ import print_function
|
|
|
|
import atexit
|
|
import time
|
|
|
|
from lldbsuite.test import decorators
|
|
import rerun_base
|
|
|
|
|
|
class RerunTimeoutTestCase(rerun_base.RerunBaseTestCase):
|
|
def maybe_do_timeout(self):
|
|
# Do the timeout here if we're going to time out.
|
|
if self.should_generate_issue():
|
|
# We time out this time.
|
|
while True:
|
|
try:
|
|
time.sleep(1)
|
|
except:
|
|
print("ignoring exception during sleep")
|
|
|
|
# call parent
|
|
super(RerunTimeoutTestCase, self).tearDown()
|
|
|
|
@decorators.no_debug_info_test
|
|
def test_timeout_file_level_timeout_rerun_succeeds(self):
|
|
"""Tests that file-level timeout is cleared on rerun."""
|
|
|
|
# This test just needs to pass. It is the exit hook (outside
|
|
# the test method) that will time out.
|
|
|
|
# Add the exit handler that will time out the first time around.
|
|
atexit.register(RerunTimeoutTestCase.maybe_do_timeout, self)
|