1 17 package org.apache.commons.collections.primitives.decorators; 18 19 import junit.framework.TestCase; 20 21 import org.apache.commons.collections.primitives.ArrayCharList; 22 import org.apache.commons.collections.primitives.CharIterator; 23 import org.apache.commons.collections.primitives.CharList; 24 25 29 public abstract class BaseUnmodifiableCharIteratorTest extends TestCase { 30 31 34 public BaseUnmodifiableCharIteratorTest(String testName) { 35 super(testName); 36 } 37 38 39 protected abstract CharIterator makeUnmodifiableCharIterator(); 42 43 protected CharIterator makeCharIterator() { 44 CharList list = new ArrayCharList(); 45 for(char i=0;i<10;i++) { 46 list.add(i); 47 } 48 return list.iterator(); 49 } 50 51 54 public final void testCharIteratorNotModifiable() { 55 CharIterator iter = makeUnmodifiableCharIterator(); 56 assertTrue(iter.hasNext()); 57 iter.next(); 58 try { 59 iter.remove(); 60 fail("Expected UnsupportedOperationException"); 61 } catch(UnsupportedOperationException e) { 62 } 64 } 65 66 public final void testIterateCharIterator() { 67 CharIterator iter = makeUnmodifiableCharIterator(); 68 for(CharIterator expected = makeCharIterator(); expected.hasNext(); ) { 69 assertTrue(iter.hasNext()); 70 assertEquals(expected.next(),iter.next()); 71 } 72 assertTrue(! iter.hasNext() ); 73 } 74 75 } | Popular Tags |