def test_not_setted_connection_pool_connection_keepalive( pingpong_thrift_client, pingpong_service_key, pingpong_thrift_service, fake_time): pool = ClientPool( pingpong_thrift_service, pingpong_thrift_client.host, pingpong_thrift_client.port, name=pingpong_service_key, raise_empty=False, max_conn=3, connction_class=pingpong_thrift_client.pool.connction_class, ) assert pool.keepalive is None with pool.connection_ctx() as conn: now = datetime.datetime.now() assert conn.alive_until is None assert conn.test_connection() old_connection = conn fake_time.FAKE_TIME = now + datetime.timedelta(seconds=0.1) with pool.connection_ctx() as conn: assert conn is old_connection fake_time.FAKE_TIME = now + datetime.timedelta(days=100) assert old_connection.test_connection() with pool.connection_ctx() as conn: assert old_connection is conn
def test_set_timeout(pingpong_thrift_client, pingpong_service_key, pingpong_thrift_service, fake_time): pool = ClientPool( pingpong_thrift_service, pingpong_thrift_client.host, pingpong_thrift_client.port, name=pingpong_service_key, raise_empty=False, max_conn=3, connction_class=pingpong_thrift_client.pool.connction_class, ) client = pool.get_client() client.set_client_timeout(0.5 * 1000) assert client.sleep(0.2) == 'good morning' with pytest.raises(socket.timeout) as e: client.sleep(1) assert 'timed out' in str(e.value) client.close() with pytest.raises(socket.timeout) as e: with pool.connection_ctx(timeout=1) as client: client.sleep(2) assert 'timed out' in str(e.value)