content: /*
   * This file was automatically generated by UTestGen and EvoSuite
   * Thu Mar 21 05:36:04 GMT 2024
   */
  
  package bible.util;
  
  import org.junit.jupiter.api.Test;
  import static org.junit.jupiter.api.Assertions.*;
  import org.junit.jupiter.api.Timeout;
  import java.util.concurrent.TimeUnit;
  import bible.util.Queue;
  import java.util.Vector;
  import org.evosuite.runtime.EvoRunner;
  import org.evosuite.runtime.EvoRunnerParameters;
  import org.junit.runner.RunWith;
  
  @RunWith(EvoRunner.class) @EvoRunnerParameters(mockJVMNonDeterminism = true, useVFS = true, useVNET = true, resetStaticState = true, separateClassLoader = true) 
  public class Queue_Original_ESTest extends Queue_Original_ESTest_scaffolding {
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testGetPeakNumberItemsReturningPositive() throws Throwable  {
        Queue queue = new Queue((-3338));
        Object arg0 = new Object();
        queue.enqueue(arg0);
        int peakNumberItems = queue.getPeakNumberItems();
        assertFalse(queue.isEmpty());
        assertEquals(1, peakNumberItems);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testGetNumberItemsReturningPositive() throws Throwable  {
        Queue queue = new Queue(1417);
        Object arg0 = new Object();
        queue.refreshElement(arg0);
        int numberItems = queue.getNumberItems();
        assertFalse(queue.isEmpty());
        assertEquals(1, numberItems);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testGetNumberItemsReturningNegative() throws Throwable  {
        Queue queue = new Queue(0);
        queue.dequeue();
        int numberItems = queue.getNumberItems();
        assertFalse(queue.maxCapacityExceeded());
        assertEquals((-1), numberItems);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testGetObjectsReturningVectorWhereSizeIsPositive() throws Throwable  {
        Queue queue = new Queue();
        Vector arg0 = queue.getObjects();
        queue.refreshElement(arg0);
        queue.getObjects();
        assertFalse(queue.isEmpty());
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testIsEmptyReturningFalse() throws Throwable  {
        Queue queue = new Queue((-1));
        Object arg0 = new Object();
        queue.refreshElement(arg0);
        boolean empty = queue.isEmpty();
        assertFalse(empty);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testIsEmptyReturningTrue() throws Throwable  {
        Queue queue = new Queue();
        queue.isEmpty();
        assertEquals(0, queue.getPeakNumberItems());
        assertEquals(0, queue.getNumberItems());
        assertFalse(queue.maxCapacityExceeded());
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreatesNodeTaking2Arguments() throws Throwable  {
        Queue arg1 = new Queue();
        Queue.Node queue_Node = arg1.new Node(arg1);
        assertFalse(arg1.maxCapacityExceeded());
        assertEquals(0, arg1.getNumberItems());
        assertEquals(0, arg1.getPeakNumberItems());
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testMaxCapacityExceededReturningFalse() throws Throwable  {
        Queue queue = new Queue();
        boolean maxCapacityExceeded = queue.maxCapacityExceeded();
        assertEquals(0, queue.getPeakNumberItems());
        assertFalse(maxCapacityExceeded);
        assertEquals(0, queue.getNumberItems());
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testMaxCapacityExceededReturningTrue() throws Throwable  {
        Queue queue = new Queue((-3338));
        boolean maxCapacityExceeded = queue.maxCapacityExceeded();
        assertEquals(0, queue.getPeakNumberItems());
        assertTrue(maxCapacityExceeded);
        assertEquals(0, queue.getNumberItems());
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testDequeue() throws Throwable  {
        Queue queue = new Queue();
        queue.dequeue();
        queue.dequeue();
        boolean maxCapacityExceeded = queue.maxCapacityExceeded();
        assertEquals((-2), queue.getNumberItems());
        assertFalse(maxCapacityExceeded);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testToString() throws Throwable  {
        Queue queue = new Queue((-3338));
        Object arg0 = new Object();
        queue.enqueue(arg0);
        queue.toString();
        assertEquals(1, queue.getNumberItems());
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testRemoveReturningZero() throws Throwable  {
        Queue queue = new Queue();
        Vector arg0 = queue.getObjects();
        queue.refreshElement(arg0);
        queue.enqueue(arg0);
        int remove = queue.remove("bible.util.Queue:[numItems=1, maxNumItems=1, maxCapacity=-1, getObjects()=[[]]\r\n]");
        assertFalse(queue.isEmpty());
        assertEquals(0, remove);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testRemoveReturningPositive() throws Throwable  {
        Queue queue = new Queue();
        Object arg0 = new Object();
        queue.enqueue(arg0);
        assertFalse(queue.isEmpty());
        
        int remove = queue.remove(arg0);
        assertEquals(1, remove);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreatesQueueTakingIntAndCallsEnqueue() throws Throwable  {
        Queue queue = new Queue((-3338));
        Object arg0 = new Object();
        queue.dequeue();
        queue.enqueue(arg0);
        assertFalse(queue.isEmpty());
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testEnqueueWithNull() throws Throwable  {
        Queue queue = new Queue(0);
        queue.enqueue((Object) null);
        assertTrue(queue.maxCapacityExceeded());
        assertEquals(0, queue.getPeakNumberItems());
        assertEquals(0, queue.getNumberItems());
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testDequeueReturningNonNull() throws Throwable  {
        Queue queue = new Queue((-3338));
        Object arg0 = new Object();
        queue.enqueue(arg0);
        assertEquals(1, queue.getNumberItems());
        
        queue.dequeue();
        assertEquals(1, queue.getPeakNumberItems());
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testGetPeakNumberItemsReturningZero() throws Throwable  {
        Queue queue = new Queue((-3338));
        int peakNumberItems = queue.getPeakNumberItems();
        assertTrue(queue.maxCapacityExceeded());
        assertEquals(0, queue.getNumberItems());
        assertEquals(0, peakNumberItems);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testGetNumberItemsReturningZero() throws Throwable  {
        Queue queue = new Queue();
        int numberItems = queue.getNumberItems();
        assertFalse(queue.maxCapacityExceeded());
        assertEquals(0, numberItems);
        assertEquals(0, queue.getPeakNumberItems());
    }
  }
  