summaryrefslogtreecommitdiff
path: root/base/src/test/java/bjc/utils/data/QueuedIteratorTest.java
blob: 573d218e6d355d156432a5a0983166dccd250868 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
package bjc.utils.data;

import static org.junit.Assert.*;

import java.util.Iterator;

import static java.util.Arrays.asList;

import org.junit.Test;

import bjc.utils.funcutils.TestUtils;

import static bjc.utils.data.QueuedIterator.*;
import static bjc.utils.funcutils.TestUtils.*;
import static bjc.utils.funcutils.IteratorUtils.*;

/**
 * Test of QueuedIterator.
 * 
 * @author bjculkin
 *
 */
public class QueuedIteratorTest {

	/**
	 * Test of functionality.
	 */
	@Test
	public void test() {
		assertIteratorEquals(false, queued());

		assertIteratorEquals(false, queued(asList(1, 2, 3)), 1, 2, 3);
		assertIteratorEquals(false, queued(asList(1, 2, 3), asList(3, 2, 1)), 1, 2, 3, 3, 2, 1);

	}

	/**
	 * Test of before() method.
	 */
	@Test
	public void testBefore() {
		QueuedIterator<Integer> itr = queued(asList(1, 2, 3));

		assertIteratorEquals(true, itr, 1, 2);

		itr.before(asList(1, 2, 3));

		assertIteratorEquals(false, itr, 1, 2, 3, 3);
	}

	/**
	 * Test of after() method.
	 */
	@Test
	public void testAfter() {
		QueuedIterator<Integer> itr = queued(asList(1, 2, 3));

		assertIteratorEquals(true, itr, 1, 2);

		itr.after(asList(1, 2, 3));

		assertIteratorEquals(false, itr, 3, 1, 2, 3);
	}
	
	/**
	 * Test of last() method.
	 */
	@Test
	public void testLast() {
		QueuedIterator<Integer> itr = queued(asList(1, 2, 3));

		assertIteratorEquals(true, itr, 1, 2);

		itr.after(asList(4));
		itr.last(asList(1, 2, 3));

		assertIteratorEquals(false, itr, 3, 4, 1, 2, 3);
	}
}