@Test
public void testTake() throws InterruptedException
{

   new Thread(() ->
   {
      try
      {
         Thread.sleep(2000);
      }
      catch (InterruptedException suppressed) {}
      queue.offer(new FairQueueTestString("key1", "item1"));
   }).start();
   FairQueueTestString s = queue.take();
   Assert.assertNotNull(s);
   Assert.assertEquals(s.getItem(), "item1");
   Assert.assertEquals(queue.size(), 0);
}