create changelog entry
[debian/openrocket] / core / test / net / sf / openrocket / util / SimpleStackTest.java
1 package net.sf.openrocket.util;
2
3 import java.util.NoSuchElementException;
4
5 import static org.junit.Assert.assertEquals;
6 import static org.junit.Assert.assertNull;
7
8 import org.junit.Test;
9
10 public class SimpleStackTest {
11
12         @Test(expected=NoSuchElementException.class)
13         public void testEmptyStack() {
14                 SimpleStack<Integer> s = new SimpleStack<Integer>();
15                 
16                 assertNull(s.peek());
17                 
18                 s.pop();
19         }
20         
21         @Test
22         public void testPushAndPop() {
23                 
24                 SimpleStack<Integer> s = new SimpleStack<Integer>();
25                 
26                 for( int i = 0; i< 10; i++ ) {
27                         s.push(i);
28                         assertEquals(i+1, s.size());
29                 }
30         
31                 for( int i=9; i>= 0; i-- ) {
32                         assertEquals( i, s.peek().intValue() );
33                         Integer val = s.pop();
34                         assertEquals( i, val.intValue() );
35                         assertEquals( i, s.size() );
36                 }
37                 
38                 assertNull( s.peek() );
39                 assertEquals( 0, s.size() );
40                 
41         }
42         
43 }