package com.github.miniyk2012.coding2017.basic.queue; import org.junit.Assert; import org.junit.Test; import org.junit.Before; import org.junit.After; /** * QueueWithTwoStacks Tester. * * @author <Authors name> * @since <pre>May 3, 2017</pre> * @version 1.0 */ public class QueueWithTwoStacksTest { QueueWithTwoStacks<String> queue; @Before public void before() throws Exception { queue = new QueueWithTwoStacks<>(); } @After public void after() throws Exception { } @Test public void testFunction() { queue.enQueue("a"); queue.enQueue("b"); queue.enQueue("c"); queue.enQueue("d"); Assert.assertEquals(4, queue.size()); Assert.assertFalse(queue.isEmpty()); Assert.assertEquals("a", queue.deQueue()); Assert.assertEquals("b", queue.deQueue()); Assert.assertEquals("c", queue.deQueue()); Assert.assertEquals(1, queue.size()); Assert.assertFalse(queue.isEmpty()); queue.enQueue("e"); Assert.assertEquals("d", queue.deQueue()); Assert.assertEquals("e", queue.deQueue()); Assert.assertTrue(queue.isEmpty()); Assert.assertEquals(0, queue.size()); } }