mirror of
https://github.com/python/cpython.git
synced 2025-11-03 19:34:08 +00:00
test
This commit is contained in:
parent
f7cc3fccad
commit
945c82eea3
4 changed files with 102 additions and 60 deletions
|
|
@ -252,8 +252,23 @@ class SocketEINTRTest(EINTRBaseTest):
|
|||
lambda path: os.close(os.open(path, os.O_WRONLY)))
|
||||
|
||||
|
||||
@unittest.skipUnless(hasattr(signal, "setitimer"), "requires setitimer()")
|
||||
class TimeEINTRTest(EINTRBaseTest):
|
||||
""" EINTR tests for the time module. """
|
||||
|
||||
def test_sleep(self):
|
||||
t0 = time.monotonic()
|
||||
time.sleep(2)
|
||||
signal.alarm(0)
|
||||
dt = time.monotonic() - t0
|
||||
self.assertGreaterEqual(dt, 1.9)
|
||||
|
||||
|
||||
def test_main():
|
||||
support.run_unittest(OSEINTRTest, SocketEINTRTest)
|
||||
support.run_unittest(
|
||||
OSEINTRTest,
|
||||
SocketEINTRTest,
|
||||
TimeEINTRTest)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
|
|
|||
|
|
@ -419,17 +419,20 @@ class WakeupSignalTests(unittest.TestCase):
|
|||
TIMEOUT_HALF = 5
|
||||
|
||||
signal.alarm(1)
|
||||
before_time = time.time()
|
||||
|
||||
# We attempt to get a signal during the sleep,
|
||||
# before select is called
|
||||
time.sleep(TIMEOUT_FULL)
|
||||
mid_time = time.time()
|
||||
dt = mid_time - before_time
|
||||
if dt >= TIMEOUT_HALF:
|
||||
raise Exception("%s >= %s" % (dt, TIMEOUT_HALF))
|
||||
try:
|
||||
select.select([], [], [], TIMEOUT_FULL)
|
||||
except InterruptedError:
|
||||
pass
|
||||
else:
|
||||
raise Exception("select() was not interrupted")
|
||||
|
||||
before_time = time.time()
|
||||
select.select([read], [], [], TIMEOUT_FULL)
|
||||
after_time = time.time()
|
||||
dt = after_time - mid_time
|
||||
dt = after_time - before_time
|
||||
if dt >= TIMEOUT_HALF:
|
||||
raise Exception("%s >= %s" % (dt, TIMEOUT_HALF))
|
||||
""", signal.SIGALRM)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue