mirror of
https://github.com/llvm/llvm-project.git
synced 2025-05-09 18:06:05 +00:00
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)
|