def test_put_get_and_ack(server): cl1 = Client('/tmp/sock') cl1.put('test', 'wow1', '1', 100) id, message = cl1.get('test', block=False) assert id == '1' assert message == 'wow1' cl1.put('test', 'wow2', '2', 500) time.sleep(1.1) id, message = cl1.get('test', block=False) assert id == '2' assert message == 'wow2' cl2 = Client('/tmp/sock') id, message = cl2.get('test', block=False) assert id == '1' assert message == 'wow1' cl3 = Client('/tmp/sock') id, message = cl3.get('test', block=False) assert id is None cl2.close() cl1.get_queue_size('test') == 2 id, message = cl3.get('test', block=False) assert id == '1' assert message == 'wow1' cl1.ack('test', '2') id, message = cl1.get('test', block=False) assert id is None