diff options
Diffstat (limited to 'jpa/tests/org.eclipse.jpt.utility.tests/src/org/eclipse/jpt/utility/tests/internal/iterators/ChainIteratorTests.java')
-rw-r--r-- | jpa/tests/org.eclipse.jpt.utility.tests/src/org/eclipse/jpt/utility/tests/internal/iterators/ChainIteratorTests.java | 132 |
1 files changed, 0 insertions, 132 deletions
diff --git a/jpa/tests/org.eclipse.jpt.utility.tests/src/org/eclipse/jpt/utility/tests/internal/iterators/ChainIteratorTests.java b/jpa/tests/org.eclipse.jpt.utility.tests/src/org/eclipse/jpt/utility/tests/internal/iterators/ChainIteratorTests.java deleted file mode 100644 index 18b3db2669..0000000000 --- a/jpa/tests/org.eclipse.jpt.utility.tests/src/org/eclipse/jpt/utility/tests/internal/iterators/ChainIteratorTests.java +++ /dev/null @@ -1,132 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2005, 2007 Oracle. All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0, which accompanies this distribution - * and is available at http://www.eclipse.org/legal/epl-v10.html. - * - * Contributors: - * Oracle - initial API and implementation - ******************************************************************************/ -package org.eclipse.jpt.utility.tests.internal.iterators; - -import java.util.AbstractCollection; -import java.util.AbstractList; -import java.util.Iterator; -import java.util.NoSuchElementException; -import java.util.Vector; -import junit.framework.TestCase; -import org.eclipse.jpt.utility.internal.iterators.ChainIterator; - -public class ChainIteratorTests extends TestCase { - private final static Class<?>[] VECTOR_HIERARCHY = { Vector.class, AbstractList.class, AbstractCollection.class, Object.class }; - - public ChainIteratorTests(String name) { - super(name); - } - - public void testHasNext() { - int i = 0; - for (Iterator<Class<?>> stream = this.buildIterator(); stream.hasNext();) { - stream.next(); - i++; - } - assertEquals(VECTOR_HIERARCHY.length, i); - } - - public void testInnerHasNext() { - int i = 0; - for (Iterator<Class<?>> stream = this.buildInnerIterator(); stream.hasNext();) { - stream.next(); - i++; - } - assertEquals(VECTOR_HIERARCHY.length, i); - } - - public void testNext() { - int i = 0; - for (Iterator<Class<?>> stream = this.buildIterator(); stream.hasNext(); i++) { - assertEquals("bogus link", VECTOR_HIERARCHY[i], stream.next()); - } - } - - public void testInnerNext() { - int i = 0; - for (Iterator<Class<?>> stream = this.buildInnerIterator(); stream.hasNext(); i++) { - assertEquals("bogus link", VECTOR_HIERARCHY[i], stream.next()); - } - } - - public void testNoSuchElementException() { - boolean exCaught = false; - Iterator<Class<?>> stream = this.buildIterator(); - Class<?> javaClass = null; - while (stream.hasNext()) { - javaClass = stream.next(); - } - try { - javaClass = stream.next(); - } catch (NoSuchElementException ex) { - exCaught = true; - } - assertTrue("NoSuchElementException not thrown: " + javaClass, exCaught); - } - - public void testUnsupportedOperationException() { - boolean exCaught = false; - for (Iterator<Class<?>> stream = this.buildIterator(); stream.hasNext();) { - if (stream.next() == AbstractCollection.class) { - try { - stream.remove(); - } catch (UnsupportedOperationException ex) { - exCaught = true; - } - } - } - assertTrue("UnsupportedOperationException not thrown", exCaught); - } - - private Iterator<Class<?>> buildIterator() { - return this.buildChainIterator(Vector.class, this.buildLinker()); - } - - private Iterator<Class<?>> buildInnerIterator() { - return this.buildInnerChainIterator(Vector.class); - } - - private Iterator<Class<?>> buildChainIterator(Class<?> startLink, ChainIterator.Linker<Class<?>> linker) { - return new ChainIterator<Class<?>>(startLink, linker); - } - - private ChainIterator.Linker<Class<?>> buildLinker() { - // chain up the class's hierarchy - return new ChainIterator.Linker<Class<?>>() { - public Class<?> nextLink(Class<?> currentLink) { - return currentLink.getSuperclass(); - } - }; - } - - private Iterator<Class<?>> buildInnerChainIterator(Class<?> startLink) { - // chain up the class's hierarchy - return new ChainIterator<Class<?>>(startLink) { - @Override - protected Class<?> nextLink(Class<?> currentLink) { - return currentLink.getSuperclass(); - } - }; - } - - public void testInvalidChainIterator() { - // missing method override - Iterator<Class<?>> iterator = new ChainIterator<Class<?>>(Vector.class); - boolean exCaught = false; - try { - Class<?> c = iterator.next(); - fail("invalid class: " + c.getName()); - } catch (UnsupportedOperationException ex) { - exCaught = true; - } - assertTrue("NoSuchElementException not thrown", exCaught); - } - -} |