mirror of
https://github.com/sqlalchemy/sqlalchemy.git
synced 2026-05-28 11:35:19 -04:00
- use a mock here, do away with timing problems for good. need to do this
for the rest of the timing tests
Change-Id: I06a815b1500222126a4dbc2a9a5da3ef7847e321
(cherry picked from commit 74ca7f627e)
This commit is contained in:
+18
-12
@@ -1373,18 +1373,24 @@ class QueuePoolTest(PoolTestBase):
|
||||
self.assert_(p.checkedout() == 0)
|
||||
|
||||
def test_recycle(self):
|
||||
p = self._queuepool_fixture(pool_size=1,
|
||||
max_overflow=0,
|
||||
recycle=3)
|
||||
c1 = p.connect()
|
||||
c_id = id(c1.connection)
|
||||
c1.close()
|
||||
c2 = p.connect()
|
||||
assert id(c2.connection) == c_id
|
||||
c2.close()
|
||||
time.sleep(4)
|
||||
c3 = p.connect()
|
||||
assert id(c3.connection) != c_id
|
||||
with patch("sqlalchemy.pool.time.time") as mock:
|
||||
mock.return_value = 10000
|
||||
|
||||
p = self._queuepool_fixture(
|
||||
pool_size=1,
|
||||
max_overflow=0,
|
||||
recycle=30)
|
||||
c1 = p.connect()
|
||||
c_id = id(c1.connection)
|
||||
c1.close()
|
||||
mock.return_value = 10001
|
||||
c2 = p.connect()
|
||||
assert id(c2.connection) == c_id
|
||||
c2.close()
|
||||
|
||||
mock.return_value = 10035
|
||||
c3 = p.connect()
|
||||
assert id(c3.connection) != c_id
|
||||
|
||||
@testing.requires.timing_intensive
|
||||
def test_recycle_on_invalidate(self):
|
||||
|
||||
Reference in New Issue
Block a user