package com.github.miniyk2012.coding2017.basic.queue; import org.junit.After; import org.junit.Assert; import org.junit.Before; import org.junit.Test; public class CircleQueueTest { @Before public void setUp() throws Exception { } @After public void tearDown() throws Exception { } @Test public void test() { CircleQueue<String> queue = new CircleQueue<String>(5); Assert.assertTrue(queue.isEmpty()); Assert.assertFalse(queue.isFull()); queue.enQueue("a"); queue.enQueue("b"); queue.enQueue("c"); // System.out.println(queue.head); // System.out.println(queue.rear); queue.enQueue("d"); queue.enQueue("e"); Assert.assertTrue(queue.isFull()); Assert.assertFalse(queue.isEmpty()); Assert.assertEquals(5, queue.size()); Assert.assertEquals("a", queue.deQueue()); Assert.assertEquals("b", queue.deQueue()); Assert.assertEquals("c", queue.deQueue()); Assert.assertFalse(queue.isFull()); Assert.assertEquals(2, queue.size()); queue.enQueue("f"); queue.enQueue("g"); // System.out.println(queue.head); // System.out.println(queue.rear); Assert.assertEquals("d", queue.deQueue()); Assert.assertEquals("e", queue.deQueue()); // System.out.println(queue.head); // System.out.println(queue.rear); Assert.assertEquals("f", queue.deQueue()); Assert.assertEquals("g", queue.deQueue()); Assert.assertEquals(0, queue.size()); Assert.assertTrue(queue.isEmpty()); Assert.assertFalse(queue.isFull()); // System.out.println(queue.head); // System.out.println(queue.rear); } }