List list = new ArrayList();
assertTrue("Unwrapped, empty List should not be equal to empty IntList.",!ilist.equals(list));
assertTrue("Unwrapped, empty IntList should not be equal to empty List.",!list.equals(ilist));
assertEquals(new ListIntList(list),ilist);
assertEquals(ilist,new ListIntList(list));
assertEquals(new IntListList(ilist),list);
assertEquals(list,new IntListList(ilist));
ilist.add(1);
list.add(new Integer(1));
assertTrue("Unwrapped, non-empty List is not equal to non-empty IntList.",!ilist.equals(list));
assertTrue("Unwrapped, non-empty IntList is not equal to non-empty List.",!list.equals(ilist));
assertEquals(new ListIntList(list),ilist);
assertEquals(ilist,new ListIntList(list));
assertEquals(new IntListList(ilist),list);
assertEquals(list,new IntListList(ilist));
ilist.add(1); ilist.add(2); ilist.add(3); ilist.add(5); ilist.add(8);
list.add(new Integer(1)); list.add(new Integer(2)); list.add(new Integer(3)); list.add(new Integer(5)); list.add(new Integer(8));
assertTrue("Unwrapped, non-empty List is not equal to non-empty IntList.",!ilist.equals(list));
assertTrue("Unwrapped, non-empty IntList is not equal to non-empty List.",!list.equals(ilist));
assertEquals(new ListIntList(list),ilist);
assertEquals(ilist,new ListIntList(list));
assertEquals(new IntListList(ilist),list);
assertEquals(list,new IntListList(ilist));
}