1   package net.sf.clirr.core.internal;
2   
3   import java.util.ArrayList;
4   import junit.framework.TestCase;
5   import net.sf.clirr.core.internal.CoIterator;
6   
7   /***
8    * Tests for the CoIterator class.
9    */
10  public class CoIteratorTest extends TestCase
11  {
12      public void testBasics()
13      {
14          ArrayList coll1 = new ArrayList();
15          ArrayList coll2 = new ArrayList();
16  
17          coll1.add("delta");
18          coll1.add("beta");
19          coll1.add("echo");
20          coll1.add("foxtrot");
21  
22          coll2.add("delta");
23          coll2.add("beta");
24          coll2.add("foxtrot");
25          coll2.add("alpha");
26          coll2.add("golf");
27          coll2.add("hotel");
28  
29          CoIterator iter = new CoIterator(null, coll1, coll2);
30  
31          ArrayList lefts = new ArrayList();
32          ArrayList rights = new ArrayList();
33  
34          while (iter.hasNext())
35          {
36              iter.next();
37              lefts.add(iter.getLeft());
38              rights.add(iter.getRight());
39          }
40  
41          int coll1Size = coll1.size();
42          int coll2Size = coll2.size();
43          assertEquals(7, lefts.size());
44          assertEquals(7, rights.size());
45  
46          assertEquals("lefts should not have alpha", null, lefts.get(0));
47          assertEquals("rights should have alpha", "alpha", rights.get(0));
48  
49          assertEquals("lefts should have beta", "beta", lefts.get(1));
50          assertEquals("rights should have beta", "beta", rights.get(1));
51  
52          assertEquals("delta", lefts.get(2));
53          assertEquals("delta", rights.get(2));
54  
55          assertEquals("echo", lefts.get(3));
56          assertEquals(null, rights.get(3));
57  
58          assertEquals("foxtrot", lefts.get(4));
59          assertEquals("foxtrot", rights.get(4));
60  
61          assertEquals(null, lefts.get(5));
62          assertEquals("golf", rights.get(5));
63  
64          assertEquals(null, lefts.get(6));
65          assertEquals("hotel", rights.get(6));
66      }
67  }