@Test
public void testAcquireMultipleLocks(TestContext context){

    Async async = context.async();
    context.assertFalse(jedis.exists(lockKey(lock_1)));
    redisBasedLock.acquireLock(lock_1, token_1, 500).setHandler(event -> {
        context.assertTrue(event.succeeded());
        context.assertTrue(event.result());
        context.assertTrue(jedis.exists(lockKey(lock_1)));
        context.assertEquals(token_1, jedis.get(lockKey(lock_1)));
        redisBasedLock.acquireLock("lock_2", "token_X", 300).setHandler(event1 -> {
            context.assertTrue(event1.succeeded());
            context.assertTrue(event1.result());
            context.assertTrue(jedis.exists(lockKey("lock_2")));
            context.assertEquals("token_X", jedis.get(lockKey("lock_2")));
            redisBasedLock.acquireLock("lock_3", "token_Z", 300).setHandler(event2 -> {
                context.assertTrue(event2.succeeded());
                context.assertTrue(event2.result());
                context.assertTrue(jedis.exists(lockKey("lock_3")));
                context.assertEquals("token_Z", jedis.get(lockKey("lock_3")));
                async.complete();
            });
        });
    });
}