pool.closeIdle(50, TimeUnit.MILLISECONDS);
Mockito.verify(iosession1).close();
Mockito.verify(iosession2, Mockito.never()).close();
PoolStats totals = pool.getTotalStats();
Assert.assertEquals(1, totals.getAvailable());
Assert.assertEquals(0, totals.getLeased());
Assert.assertEquals(0, totals.getPending());
PoolStats stats = pool.getStats("somehost");
Assert.assertEquals(1, stats.getAvailable());
Assert.assertEquals(0, stats.getLeased());
Assert.assertEquals(0, stats.getPending());
pool.closeIdle(-1, TimeUnit.MILLISECONDS);
Mockito.verify(iosession2).close();
totals = pool.getTotalStats();
Assert.assertEquals(0, totals.getAvailable());
Assert.assertEquals(0, totals.getLeased());
Assert.assertEquals(0, totals.getPending());
stats = pool.getStats("somehost");
Assert.assertEquals(0, stats.getAvailable());
Assert.assertEquals(0, stats.getLeased());
Assert.assertEquals(0, stats.getPending());
}