001    package aima.test.search;
002    
003    import java.util.ArrayList;
004    import java.util.List;
005    
006    import junit.framework.TestCase;
007    import aima.datastructures.LIFOQueue;
008    
009    /**
010     * @author Ravi Mohan
011     * 
012     */
013    
014    public class LIFOQueueTest extends TestCase {
015            public void testFifoQueue() {
016                    LIFOQueue queue = new LIFOQueue();
017                    assertTrue(queue.isEmpty());
018    
019                    queue.add("Hello");
020                    assertEquals(1, queue.size());
021                    assertFalse(queue.isEmpty());
022    
023                    queue.add("Hi");
024                    assertEquals(2, queue.size());
025                    assertFalse(queue.isEmpty());
026    
027                    String s = (String) queue.remove();
028                    assertEquals("Hi", s);
029                    assertEquals(1, queue.size());
030                    assertEquals("Hello", queue.get());
031    
032                    List<String> l = new ArrayList<String>();
033                    l.add("bonjour");
034                    l.add("salaam alaikum");
035                    queue.add(l);
036                    assertEquals(3, queue.size());
037                    assertEquals("salaam alaikum", queue.get());
038    
039                    queue.add(l);
040    
041            }
042    }