View Javadoc
1   package de.fhdw.wtf.common.stream.test;
2   
3   import static org.junit.Assert.assertEquals;
4   
5   import org.junit.Test;
6   
7   import de.fhdw.wtf.common.stream.FilteredTokenStream;
8   import de.fhdw.wtf.common.token.CommentTextToken;
9   import de.fhdw.wtf.common.token.IdentifierToken;
10  import de.fhdw.wtf.common.token.Position;
11  import de.fhdw.wtf.common.token.Token;
12  import de.fhdw.wtf.common.token.WhitespaceToken;
13  
14  public class FilteredTokenStreamTest {
15  	
16  	@Test
17  	public void test() {
18  		
19  		final Token t1 = WhitespaceToken.create("t1", Position.create("", 0 + 1, 0 + 1, 0));
20  		final Token t2 = IdentifierToken.create("t2", Position.create("", 0 + 1, 0 + 1, 0));
21  		final Token t3 = IdentifierToken.create("t3", Position.create("", 0 + 1, 0 + 1, 0));
22  		final Token t4 = WhitespaceToken.create("t4", Position.create("", 0 + 1, 0 + 1, 0));
23  		final Token t5 = CommentTextToken.create("t5", Position.create("", 0 + 1, 0 + 1, 0));
24  		final Token t6 = WhitespaceToken.create("t6", Position.create("", 0 + 1, 0 + 1, 0));
25  		final Token t7 = IdentifierToken.create("t7", Position.create("", 0 + 1, 0 + 1, 0));
26  		final Token t8 = WhitespaceToken.create("t8", Position.create("", 0 + 1, 0 + 1, 0));
27  		
28  		final FilteredTokenStream stream = FilteredTokenStream.create();
29  		stream.add(t1);
30  		stream.add(t2);
31  		stream.add(t3);
32  		stream.add(t4);
33  		stream.add(t5);
34  		stream.add(t6);
35  		stream.add(t7);
36  		stream.add(t8);
37  		
38  		assertEquals(true, stream.hasNext());
39  		assertEquals(t2, stream.peek());
40  		assertEquals(t2, stream.next());
41  		assertEquals(true, stream.hasNext());
42  		assertEquals(t3, stream.peek());
43  		assertEquals(t3, stream.next());
44  		assertEquals(true, stream.hasNext());
45  		assertEquals(t7, stream.peek());
46  		assertEquals(t7, stream.next());
47  		assertEquals(false, stream.hasNext());
48  	}
49  	
50  }