package com.aaront.execrise.generic; import com.aaront.exercise.generic.CircleQueue; import org.junit.Assert; import org.junit.Test; /** * @author tonyhui * @since 17/5/6 */ public class CircleQueueTest { @Test public void test() { CircleQueue<String> circleQueue = new CircleQueue<>(); for (int i = 0; i < 10; i++) { circleQueue.enQueue("circleQueue" + i); } Assert.assertEquals(10, circleQueue.size()); Assert.assertFalse(circleQueue.isEmpty()); for (int i = 0; i < 5; i++) { Assert.assertEquals("circleQueue" + i, circleQueue.deQueue()); } Assert.assertEquals(5, circleQueue.size()); Assert.assertFalse(circleQueue.isEmpty()); for (int i = 5; i < 10; i++) { Assert.assertEquals("circleQueue" + i, circleQueue.deQueue()); } Assert.assertEquals(0, circleQueue.size()); Assert.assertTrue(circleQueue.isEmpty()); for (int i = 0; i < 6; i++) { circleQueue.enQueue("item" + i); } Assert.assertEquals(6, circleQueue.size()); Assert.assertFalse(circleQueue.isEmpty()); for (int i = 0; i < 6; i++) { Assert.assertEquals("item" + i, circleQueue.deQueue()); } Assert.assertEquals(0, circleQueue.size()); Assert.assertTrue(circleQueue.isEmpty()); } }