Skip to content

Commit 1c1882f

Browse files
committed
tweak poll timeout test
seems extra flaky on 3.11
1 parent d571c39 commit 1c1882f

File tree

1 file changed

+32
-31
lines changed

1 file changed

+32
-31
lines changed

zmq/tests/test_poll.py

Lines changed: 32 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ def test_no_events(self):
103103
poller = self.Poller()
104104
poller.register(s1, zmq.POLLIN | zmq.POLLOUT)
105105
poller.register(s2, 0)
106-
self.assertTrue(s1 in poller)
106+
assert s1 in poller
107107
self.assertFalse(s2 in poller)
108108
poller.register(s1, 0)
109109
self.assertFalse(s1 in poller)
@@ -157,25 +157,26 @@ def test_raw(self):
157157
w.close()
158158
r.close()
159159

160+
@mark.flaky(reruns=3)
160161
def test_timeout(self):
161162
"""make sure Poller.poll timeout has the right units (milliseconds)."""
162163
s1, s2 = self.create_bound_pair(zmq.PAIR, zmq.PAIR)
163164
poller = self.Poller()
164165
poller.register(s1, zmq.POLLIN)
165-
tic = time.time()
166+
tic = time.perf_counter()
166167
evt = poller.poll(0.005)
167-
toc = time.time()
168-
self.assertTrue(toc - tic < 0.1)
169-
tic = time.time()
170-
evt = poller.poll(5)
171-
toc = time.time()
172-
self.assertTrue(toc - tic < 0.1)
173-
self.assertTrue(toc - tic > 0.001)
174-
tic = time.time()
168+
toc = time.perf_counter()
169+
toc - tic < 0.1
170+
tic = time.perf_counter()
171+
evt = poller.poll(50)
172+
toc = time.perf_counter()
173+
assert toc - tic < 0.1
174+
assert toc - tic > 0.01
175+
tic = time.perf_counter()
175176
evt = poller.poll(500)
176-
toc = time.time()
177-
self.assertTrue(toc - tic < 1)
178-
self.assertTrue(toc - tic > 0.1)
177+
toc = time.perf_counter()
178+
assert toc - tic < 1
179+
assert toc - tic > 0.1
179180

180181

181182
class TestSelect(PollZMQTestCase):
@@ -186,25 +187,25 @@ def test_pair(self):
186187
wait()
187188

188189
rlist, wlist, xlist = zmq.select([s1, s2], [s1, s2], [s1, s2])
189-
self.assertTrue(s1 in wlist)
190-
self.assertTrue(s2 in wlist)
191-
self.assertTrue(s1 not in rlist)
192-
self.assertTrue(s2 not in rlist)
190+
assert s1 in wlist
191+
assert s2 in wlist
192+
assert s1 not in rlist
193+
assert s2 not in rlist
193194

194195
@mark.flaky(reruns=3)
195196
def test_timeout(self):
196197
"""make sure select timeout has the right units (seconds)."""
197198
s1, s2 = self.create_bound_pair(zmq.PAIR, zmq.PAIR)
198-
tic = time.time()
199+
tic = time.perf_counter()
199200
r, w, x = zmq.select([s1, s2], [], [], 0.005)
200-
toc = time.time()
201-
self.assertTrue(toc - tic < 1)
202-
self.assertTrue(toc - tic > 0.001)
203-
tic = time.time()
201+
toc = time.perf_counter()
202+
assert toc - tic < 1
203+
assert toc - tic > 0.001
204+
tic = time.perf_counter()
204205
r, w, x = zmq.select([s1, s2], [], [], 0.25)
205-
toc = time.time()
206-
self.assertTrue(toc - tic < 1)
207-
self.assertTrue(toc - tic > 0.1)
206+
toc = time.perf_counter()
207+
assert toc - tic < 1
208+
assert toc - tic > 0.1
208209

209210

210211
if have_gevent:
@@ -220,19 +221,19 @@ def test_wakeup(self):
220221
poller = self.Poller()
221222
poller.register(s2, zmq.POLLIN)
222223

223-
tic = time.time()
224+
tic = time.perf_counter()
224225
r = gevent.spawn(lambda: poller.poll(10000))
225226
s = gevent.spawn(lambda: s1.send(b'msg1'))
226227
r.join()
227-
toc = time.time()
228-
self.assertTrue(toc - tic < 1)
228+
toc = time.perf_counter()
229+
assert toc - tic < 1
229230

230231
def test_socket_poll(self):
231232
s1, s2 = self.create_bound_pair(zmq.PAIR, zmq.PAIR)
232233

233-
tic = time.time()
234+
tic = time.perf_counter()
234235
r = gevent.spawn(lambda: s2.poll(10000))
235236
s = gevent.spawn(lambda: s1.send(b'msg1'))
236237
r.join()
237-
toc = time.time()
238-
self.assertTrue(toc - tic < 1)
238+
toc = time.perf_counter()
239+
assert toc - tic < 1

0 commit comments

Comments
 (0)