org.apache.commons.collections.iterators

Class AbstractTestIterator

public abstract class AbstractTestIterator extends AbstractTestObject

Abstract class for testing the Iterator interface.

This class provides a framework for testing an implementation of Iterator. Concrete subclasses must provide the iterator to be tested. They must also specify certain details of how the iterator operates by overriding the supportsXxx() methods if necessary.

Since: Commons Collections 3.0

Constructor Summary
AbstractTestIterator(String testName)
JUnit constructor.
Method Summary
abstract IteratormakeEmptyIterator()
Implement this method to return an iterator over an empty collection.
abstract IteratormakeFullIterator()
Implement this method to return an iterator over a collection with elements.
ObjectmakeObject()
Implements the abstract superclass method to return the full iterator.
booleansupportsEmptyIterator()
Whether or not we are testing an iterator that can be empty.
booleansupportsFullIterator()
Whether or not we are testing an iterator that can contain elements.
booleansupportsRemove()
Whether or not we are testing an iterator that supports remove().
voidtestEmptyIterator()
Test the empty iterator.
voidtestFullIterator()
Test normal iteration behaviour.
voidtestRemove()
Test remove behaviour.
voidverify()
Allows subclasses to add complex cross verification

Constructor Detail

AbstractTestIterator

public AbstractTestIterator(String testName)
JUnit constructor.

Parameters: testName the test class name

Method Detail

makeEmptyIterator

public abstract Iterator makeEmptyIterator()
Implement this method to return an iterator over an empty collection.

Returns: an empty iterator

makeFullIterator

public abstract Iterator makeFullIterator()
Implement this method to return an iterator over a collection with elements.

Returns: a full iterator

makeObject

public Object makeObject()
Implements the abstract superclass method to return the full iterator.

Returns: a full iterator

supportsEmptyIterator

public boolean supportsEmptyIterator()
Whether or not we are testing an iterator that can be empty. Default is true.

Returns: true if Iterator can be empty

supportsFullIterator

public boolean supportsFullIterator()
Whether or not we are testing an iterator that can contain elements. Default is true.

Returns: true if Iterator can be full

supportsRemove

public boolean supportsRemove()
Whether or not we are testing an iterator that supports remove(). Default is true.

Returns: true if Iterator supports remove

testEmptyIterator

public void testEmptyIterator()
Test the empty iterator.

testFullIterator

public void testFullIterator()
Test normal iteration behaviour.

testRemove

public void testRemove()
Test remove behaviour.

verify

public void verify()
Allows subclasses to add complex cross verification
Copyright © 2001-2008 Apache Software Foundation. All Rights Reserved.