org.apache.commons.collections.iterators
Class AbstractTestMapIterator

java.lang.Object
  extended byjunit.framework.Assert
      extended byjunit.framework.TestCase
          extended byorg.apache.commons.collections.BulkTest
              extended byorg.apache.commons.collections.AbstractTestObject
                  extended byorg.apache.commons.collections.iterators.AbstractTestIterator
                      extended byorg.apache.commons.collections.iterators.AbstractTestMapIterator
All Implemented Interfaces:
java.lang.Cloneable, junit.framework.Test
Direct Known Subclasses:
AbstractTestBidiMap.TestBidiMapIterator, AbstractTestIterableMap.InnerTestMapIterator, AbstractTestOrderedBidiMap.TestBidiOrderedMapIterator, AbstractTestOrderedMapIterator

public abstract class AbstractTestMapIterator
extends AbstractTestIterator

Abstract class for testing the MapIterator interface.

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

Since:
Commons Collections 3.0

Field Summary
 
Fields inherited from class org.apache.commons.collections.AbstractTestObject
COLLECTIONS_MAJOR_VERSION
 
Constructor Summary
AbstractTestMapIterator(java.lang.String testName)
          JUnit constructor.
 
Method Summary
 java.lang.Object[] addSetValues()
          The values to be used in the add and set tests.
abstract  java.util.Map getConfirmedMap()
          Implement this method to return the confirmed map which contains the same data as the iterator.
abstract  java.util.Map getMap()
          Implement this method to return the map which contains the same data as the iterator.
 boolean isGetStructuralModify()
          Whether the get operation on the map structurally modifies the map, such as with LRUMap.
 java.util.Iterator makeEmptyIterator()
          Implements the abstract superclass method to return the list iterator.
abstract  MapIterator makeEmptyMapIterator()
          Implement this method to return a map iterator over an empty map.
 java.util.Iterator makeFullIterator()
          Implements the abstract superclass method to return the list iterator.
abstract  MapIterator makeFullMapIterator()
          Implement this method to return a map iterator over a map with elements.
 boolean supportsSetValue()
          Whether or not we are testing an iterator that supports setValue().
 void testEmptyMapIterator()
          Test that the empty list iterator contract is correct.
 void testFullMapIterator()
          Test that the full list iterator contract is correct.
 void testMapIteratorRemoveGetKey()
           
 void testMapIteratorRemoveGetValue()
           
 void testMapIteratorSet()
           
 void testMapIteratorSetRemoveSet()
           
 void testRemove()
          Test remove behaviour.
 
Methods inherited from class org.apache.commons.collections.iterators.AbstractTestIterator
makeObject, supportsEmptyIterator, supportsFullIterator, supportsRemove, testEmptyIterator, testFullIterator, verify
 
Methods inherited from class org.apache.commons.collections.AbstractTestObject
getCanonicalEmptyCollectionName, getCanonicalFullCollectionName, getCompatibilityVersion, isEqualsCheckable, isTestSerialization, readExternalFormFromBytes, readExternalFormFromDisk, skipSerializedCanonicalTests, supportsEmptyCollections, supportsFullCollections, testCanonicalEmptyCollectionExists, testCanonicalFullCollectionExists, testEqualsNull, testObjectEqualsSelf, testObjectHashCodeEqualsContract, testObjectHashCodeEqualsSelfHashCode, testSerializeDeserializeThenCompare, testSimpleSerialization, writeExternalFormToBytes, writeExternalFormToDisk
 
Methods inherited from class org.apache.commons.collections.BulkTest
clone, ignoredTests, makeSuite, toString
 
Methods inherited from class junit.framework.TestCase
countTestCases, createResult, getName, run, run, runBare, runTest, setName, setUp, tearDown
 
Methods inherited from class junit.framework.Assert
assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertFalse, assertFalse, assertNotNull, assertNotNull, assertNotSame, assertNotSame, assertNull, assertNull, assertSame, assertSame, assertTrue, assertTrue, fail, fail, failNotEquals, failNotSame, failSame
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

AbstractTestMapIterator

public AbstractTestMapIterator(java.lang.String testName)
JUnit constructor.

Parameters:
testName - the test class name
Method Detail

makeEmptyMapIterator

public abstract MapIterator makeEmptyMapIterator()
Implement this method to return a map iterator over an empty map.

Returns:
an empty iterator

makeFullMapIterator

public abstract MapIterator makeFullMapIterator()
Implement this method to return a map iterator over a map with elements.

Returns:
a full iterator

getMap

public abstract java.util.Map getMap()
Implement this method to return the map which contains the same data as the iterator.

Returns:
a full map which can be updated

getConfirmedMap

public abstract java.util.Map getConfirmedMap()
Implement this method to return the confirmed map which contains the same data as the iterator.

Returns:
a full map which can be updated

makeEmptyIterator

public final java.util.Iterator makeEmptyIterator()
Implements the abstract superclass method to return the list iterator.

Specified by:
makeEmptyIterator in class AbstractTestIterator
Returns:
an empty iterator

makeFullIterator

public final java.util.Iterator makeFullIterator()
Implements the abstract superclass method to return the list iterator.

Specified by:
makeFullIterator in class AbstractTestIterator
Returns:
a full iterator

supportsSetValue

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

Returns:
true if Iterator supports set

isGetStructuralModify

public boolean isGetStructuralModify()
Whether the get operation on the map structurally modifies the map, such as with LRUMap. Default is false.

Returns:
true if the get method structurally modifies the map

addSetValues

public java.lang.Object[] addSetValues()
The values to be used in the add and set tests. Default is two strings.


testEmptyMapIterator

public void testEmptyMapIterator()
Test that the empty list iterator contract is correct.


testFullMapIterator

public void testFullMapIterator()
Test that the full list iterator contract is correct.


testMapIteratorSet

public void testMapIteratorSet()

testRemove

public void testRemove()
Description copied from class: AbstractTestIterator
Test remove behaviour.

Overrides:
testRemove in class AbstractTestIterator

testMapIteratorSetRemoveSet

public void testMapIteratorSetRemoveSet()

testMapIteratorRemoveGetKey

public void testMapIteratorRemoveGetKey()

testMapIteratorRemoveGetValue

public void testMapIteratorRemoveGetValue()


Copyright © 2001-2007 Apache Software Foundation. All Rights Reserved.