You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by rw...@apache.org on 2003/03/01 01:47:29 UTC
cvs commit: jakarta-commons/collections/src/test/org/apache/commons/collections/primitives/adapters TestCollectionIntCollection.java TestIntCollectionCollection.java TestIntIteratorIterator.java TestIntListIteratorListIterator.java TestIteratorIntIterator.java TestListIteratorIntListIterator.java TestAll.java TestIntListList.java TestListIntList.java
rwaldhoff 2003/02/28 16:47:29
Modified: collections/src/java/org/apache/commons/collections/primitives
AbstractRandomAccessIntList.java
collections/src/java/org/apache/commons/collections/primitives/adapters
CollectionIntCollection.java
IntCollectionCollection.java IntListList.java
ListIntList.java
collections/src/test/org/apache/commons/collections/primitives
TestIntList.java
collections/src/test/org/apache/commons/collections/primitives/adapters
TestAll.java TestIntListList.java
TestListIntList.java
Added: collections/src/test/org/apache/commons/collections/primitives
TestIntIterator.java TestIntListIterator.java
collections/src/test/org/apache/commons/collections/primitives/adapters
TestCollectionIntCollection.java
TestIntCollectionCollection.java
TestIntIteratorIterator.java
TestIntListIteratorListIterator.java
TestIteratorIntIterator.java
TestListIteratorIntListIterator.java
Log:
* add tests
* make a few minor changes so that those tests pass
Revision Changes Path
1.13 +5 -3 jakarta-commons/collections/src/java/org/apache/commons/collections/primitives/AbstractRandomAccessIntList.java
Index: AbstractRandomAccessIntList.java
===================================================================
RCS file: /home/cvs/jakarta-commons/collections/src/java/org/apache/commons/collections/primitives/AbstractRandomAccessIntList.java,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- AbstractRandomAccessIntList.java 28 Feb 2003 00:17:52 -0000 1.12
+++ AbstractRandomAccessIntList.java 1 Mar 2003 00:47:28 -0000 1.13
@@ -369,8 +369,10 @@
protected static class RandomAccessIntSubList extends AbstractRandomAccessIntList implements IntList {
RandomAccessIntSubList(AbstractRandomAccessIntList list, int fromIndex, int toIndex) {
- if(fromIndex < 0 || toIndex > list.size() || fromIndex > toIndex) {
+ if(fromIndex < 0 || toIndex > list.size()) {
throw new IndexOutOfBoundsException();
+ } else if(fromIndex > toIndex) {
+ throw new IllegalArgumentException();
} else {
_list = list;
_offset = fromIndex;
1.7 +2 -8 jakarta-commons/collections/src/java/org/apache/commons/collections/primitives/adapters/CollectionIntCollection.java
Index: CollectionIntCollection.java
===================================================================
RCS file: /home/cvs/jakarta-commons/collections/src/java/org/apache/commons/collections/primitives/adapters/CollectionIntCollection.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- CollectionIntCollection.java 28 Feb 2003 21:21:51 -0000 1.6
+++ CollectionIntCollection.java 1 Mar 2003 00:47:28 -0000 1.7
@@ -96,12 +96,6 @@
return new NonSerializableCollectionIntCollection(collection);
}
}
-
- /**
- * No-arg constructor, for serialization purposes.
- */
- protected CollectionIntCollection() {
- }
/**
* Creates an {@link IntCollection IntCollection} wrapping
1.6 +2 -8 jakarta-commons/collections/src/java/org/apache/commons/collections/primitives/adapters/IntCollectionCollection.java
Index: IntCollectionCollection.java
===================================================================
RCS file: /home/cvs/jakarta-commons/collections/src/java/org/apache/commons/collections/primitives/adapters/IntCollectionCollection.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- IntCollectionCollection.java 28 Feb 2003 21:21:51 -0000 1.5
+++ IntCollectionCollection.java 1 Mar 2003 00:47:28 -0000 1.6
@@ -100,12 +100,6 @@
}
/**
- * No-arg constructor, for serialization purposes.
- */
- protected IntCollectionCollection() {
- }
-
- /**
* Creates a {@link Collection Collection} wrapping
* the specified {@link IntCollection IntCollection}.
* @see #wrap
1.6 +2 -8 jakarta-commons/collections/src/java/org/apache/commons/collections/primitives/adapters/IntListList.java
Index: IntListList.java
===================================================================
RCS file: /home/cvs/jakarta-commons/collections/src/java/org/apache/commons/collections/primitives/adapters/IntListList.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- IntListList.java 28 Feb 2003 21:21:51 -0000 1.5
+++ IntListList.java 1 Mar 2003 00:47:28 -0000 1.6
@@ -97,12 +97,6 @@
return new NonSerializableIntListList(list);
}
}
-
- /**
- * No-arg constructor, for serialization purposes.
- */
- protected IntListList() {
- }
/**
* Creates a {@link List List} wrapping
1.7 +2 -8 jakarta-commons/collections/src/java/org/apache/commons/collections/primitives/adapters/ListIntList.java
Index: ListIntList.java
===================================================================
RCS file: /home/cvs/jakarta-commons/collections/src/java/org/apache/commons/collections/primitives/adapters/ListIntList.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- ListIntList.java 28 Feb 2003 00:17:53 -0000 1.6
+++ ListIntList.java 1 Mar 2003 00:47:28 -0000 1.7
@@ -99,12 +99,6 @@
}
/**
- * No-arg constructor, for serialization purposes.
- */
- protected ListIntList() {
- }
-
- /**
* Creates an {@link IntList IntList} wrapping
* the specified {@link List List}.
* @see #wrap
1.7 +70 -2 jakarta-commons/collections/src/test/org/apache/commons/collections/primitives/TestIntList.java
Index: TestIntList.java
===================================================================
RCS file: /home/cvs/jakarta-commons/collections/src/test/org/apache/commons/collections/primitives/TestIntList.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- TestIntList.java 28 Feb 2003 00:17:53 -0000 1.6
+++ TestIntList.java 1 Mar 2003 00:47:28 -0000 1.7
@@ -140,6 +140,43 @@
// tests
// ------------------------------------------------------------------------
+ public void testToJustBigEnoughIntArray() {
+ IntList list = makeFullIntList();
+ int[] dest = new int[list.size()];
+ assertSame(dest,list.toArray(dest));
+ int i=0;
+ for(IntIterator iter = list.iterator(); iter.hasNext();i++) {
+ assertEquals(iter.next(),dest[i]);
+ }
+ }
+
+ public void testToLargerThanNeededIntArray() {
+ IntList list = makeFullIntList();
+ int[] dest = new int[list.size()*2];
+ for(int i=0;i<dest.length;i++) {
+ dest[i] = Integer.MAX_VALUE;
+ }
+ assertSame(dest,list.toArray(dest));
+ int i=0;
+ for(IntIterator iter = list.iterator(); iter.hasNext();i++) {
+ assertEquals(iter.next(),dest[i]);
+ }
+ for(;i<dest.length;i++) {
+ assertEquals(Integer.MAX_VALUE,dest[i]);
+ }
+ }
+
+ public void testToSmallerThanNeededIntArray() {
+ IntList list = makeFullIntList();
+ int[] dest = new int[list.size()/2];
+ int[] dest2 = list.toArray(dest);
+ assertTrue(dest != dest2);
+ int i=0;
+ for(IntIterator iter = list.iterator(); iter.hasNext();i++) {
+ assertEquals(iter.next(),dest2[i]);
+ }
+ }
+
public void testHashCodeSpecification() {
IntList list = makeFullIntList();
int hash = 1;
@@ -308,6 +345,37 @@
public void testSubListsAreNotSerializable() throws Exception {
IntList list = makeFullIntList().subList(2,3);
assertTrue( ! (list instanceof Serializable) );
+ }
+
+ public void testSubListOutOfBounds() throws Exception {
+ try {
+ makeEmptyIntList().subList(2,3);
+ fail("Expected IndexOutOfBoundsException");
+ } catch(IndexOutOfBoundsException e) {
+ // expected
+ }
+
+ try {
+ makeFullIntList().subList(-1,3);
+ fail("Expected IndexOutOfBoundsException");
+ } catch(IndexOutOfBoundsException e) {
+ // expected
+ }
+
+
+ try {
+ makeFullIntList().subList(5,2);
+ fail("Expected IllegalArgumentException");
+ } catch(IllegalArgumentException e) {
+ // expected
+ }
+
+ try {
+ makeFullIntList().subList(2,makeFullIntList().size()+2);
+ fail("Expected IndexOutOfBoundsException");
+ } catch(IndexOutOfBoundsException e) {
+ // expected
+ }
}
}
1.1 jakarta-commons/collections/src/test/org/apache/commons/collections/primitives/TestIntIterator.java
Index: TestIntIterator.java
===================================================================
/*
* $Header: /home/cvs/jakarta-commons/collections/src/test/org/apache/commons/collections/primitives/TestIntIterator.java,v 1.1 2003/03/01 00:47:28 rwaldhoff Exp $
* ====================================================================
* The Apache Software License, Version 1.1
*
* Copyright (c) 2003 The Apache Software Foundation. All rights
* reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
*
* 3. The end-user documentation included with the redistribution, if
* any, must include the following acknowledgment:
* "This product includes software developed by the
* Apache Software Foundation (http://www.apache.org/)."
* Alternately, this acknowledgment may appear in the software itself,
* if and wherever such third-party acknowledgments normally appear.
*
* 4. The names "The Jakarta Project", "Commons", and "Apache Software
* Foundation" must not be used to endorse or promote products derived
* from this software without prior written permission. For written
* permission, please contact apache@apache.org.
*
* 5. Products derived from this software may not be called "Apache"
* nor may "Apache" appear in their names without prior written
* permission of the Apache Software Foundation.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
* ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
* ====================================================================
*
* This software consists of voluntary contributions made by many
* individuals on behalf of the Apache Software Foundation. For more
* information on the Apache Software Foundation, please see
* <http://www.apache.org/>.
*
*/
package org.apache.commons.collections.primitives;
import java.util.Iterator;
import java.util.NoSuchElementException;
import org.apache.commons.collections.iterators.TestIterator;
import org.apache.commons.collections.primitives.adapters.IntIteratorIterator;
/**
* @version $Revision: 1.1 $ $Date: 2003/03/01 00:47:28 $
* @author Rodney Waldhoff
*/
public abstract class TestIntIterator extends TestIterator {
// conventional
// ------------------------------------------------------------------------
public TestIntIterator(String testName) {
super(testName);
}
// collections testing framework
// ------------------------------------------------------------------------
protected Object makeObject() {
return makeFullIterator();
}
public Iterator makeEmptyIterator() {
return IntIteratorIterator.wrap(makeEmptyIntIterator());
}
public Iterator makeFullIterator() {
return IntIteratorIterator.wrap(makeFullIntIterator());
}
protected abstract IntIterator makeEmptyIntIterator();
protected abstract IntIterator makeFullIntIterator();
protected abstract int[] getFullElements();
// tests
// ------------------------------------------------------------------------
public void testNextHasNextRemove() {
int[] elements = getFullElements();
IntIterator iter = makeFullIntIterator();
for(int i=0;i<elements.length;i++) {
assertTrue(iter.hasNext());
assertEquals(elements[i],iter.next());
if(supportsRemove()) {
iter.remove();
}
}
assertTrue(! iter.hasNext() );
}
public void testEmptyIntIterator() {
assertTrue( ! makeEmptyIntIterator().hasNext() );
try {
makeEmptyIntIterator().next();
fail("Expected NoSuchElementException");
} catch(NoSuchElementException e) {
// expected
}
if(supportsRemove()) {
try {
makeEmptyIntIterator().remove();
fail("Expected IllegalStateException");
} catch(IllegalStateException e) {
// expected
}
}
}
public void testRemoveBeforeNext() {
if(supportsRemove()) {
try {
makeFullIntIterator().remove();
fail("Expected IllegalStateException");
} catch(IllegalStateException e) {
// expected
}
}
}
public void testRemoveAfterRemove() {
if(supportsRemove()) {
IntIterator iter = makeFullIntIterator();
iter.next();
iter.remove();
try {
iter.remove();
fail("Expected IllegalStateException");
} catch(IllegalStateException e) {
// expected
}
}
}
}
1.1 jakarta-commons/collections/src/test/org/apache/commons/collections/primitives/TestIntListIterator.java
Index: TestIntListIterator.java
===================================================================
/*
* $Header: /home/cvs/jakarta-commons/collections/src/test/org/apache/commons/collections/primitives/TestIntListIterator.java,v 1.1 2003/03/01 00:47:28 rwaldhoff Exp $
* ====================================================================
* The Apache Software License, Version 1.1
*
* Copyright (c) 2003 The Apache Software Foundation. All rights
* reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
*
* 3. The end-user documentation included with the redistribution, if
* any, must include the following acknowledgment:
* "This product includes software developed by the
* Apache Software Foundation (http://www.apache.org/)."
* Alternately, this acknowledgment may appear in the software itself,
* if and wherever such third-party acknowledgments normally appear.
*
* 4. The names "The Jakarta Project", "Commons", and "Apache Software
* Foundation" must not be used to endorse or promote products derived
* from this software without prior written permission. For written
* permission, please contact apache@apache.org.
*
* 5. Products derived from this software may not be called "Apache"
* nor may "Apache" appear in their names without prior written
* permission of the Apache Software Foundation.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
* ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
* ====================================================================
*
* This software consists of voluntary contributions made by many
* individuals on behalf of the Apache Software Foundation. For more
* information on the Apache Software Foundation, please see
* <http://www.apache.org/>.
*
*/
package org.apache.commons.collections.primitives;
/**
* @version $Revision: 1.1 $ $Date: 2003/03/01 00:47:28 $
* @author Rodney Waldhoff
*/
public abstract class TestIntListIterator extends TestIntIterator {
// conventional
// ------------------------------------------------------------------------
public TestIntListIterator(String testName) {
super(testName);
}
// collections testing framework
// ------------------------------------------------------------------------
public IntIterator makeEmptyIntIterator() {
return makeEmptyIntListIterator();
}
public IntIterator makeFullIntIterator() {
return makeFullIntListIterator();
}
public abstract IntListIterator makeEmptyIntListIterator();
public abstract IntListIterator makeFullIntListIterator();
// tests
// ------------------------------------------------------------------------
}
1.2 +8 -2 jakarta-commons/collections/src/test/org/apache/commons/collections/primitives/adapters/TestAll.java
Index: TestAll.java
===================================================================
RCS file: /home/cvs/jakarta-commons/collections/src/test/org/apache/commons/collections/primitives/adapters/TestAll.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- TestAll.java 26 Feb 2003 19:17:24 -0000 1.1
+++ TestAll.java 1 Mar 2003 00:47:29 -0000 1.2
@@ -78,8 +78,14 @@
public static Test suite() {
TestSuite suite = new TestSuite();
+ suite.addTest(TestCollectionIntCollection.suite());
+ suite.addTest(TestIntCollectionCollection.suite());
suite.addTest(TestIntListList.suite());
suite.addTest(TestListIntList.suite());
+ suite.addTest(TestIteratorIntIterator.suite());
+ suite.addTest(TestListIteratorIntListIterator.suite());
+ suite.addTest(TestIntIteratorIterator.suite());
+ suite.addTest(TestIntListIteratorListIterator.suite());
return suite;
}
1.2 +22 -2 jakarta-commons/collections/src/test/org/apache/commons/collections/primitives/adapters/TestIntListList.java
Index: TestIntListList.java
===================================================================
RCS file: /home/cvs/jakarta-commons/collections/src/test/org/apache/commons/collections/primitives/adapters/TestIntListList.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- TestIntListList.java 26 Feb 2003 19:17:24 -0000 1.1
+++ TestIntListList.java 1 Mar 2003 00:47:29 -0000 1.2
@@ -57,6 +57,7 @@
package org.apache.commons.collections.primitives.adapters;
+import java.io.Serializable;
import java.util.List;
import junit.framework.Test;
@@ -64,6 +65,7 @@
import org.apache.commons.collections.BulkTest;
import org.apache.commons.collections.TestList;
+import org.apache.commons.collections.primitives.AbstractRandomAccessIntList;
import org.apache.commons.collections.primitives.ArrayIntList;
/**
@@ -134,4 +136,22 @@
// need to add a serialized form to cvs
}
+ public void testWrapNull() {
+ assertNull(IntListList.wrap(null));
+ }
+
+ public void testWrapSerializable() {
+ List list = IntListList.wrap(new ArrayIntList());
+ assertNotNull(list);
+ assertTrue(list instanceof Serializable);
+ }
+
+ public void testWrapNonSerializable() {
+ List list = IntListList.wrap(new AbstractRandomAccessIntList() {
+ public int get(int i) { throw new IndexOutOfBoundsException(); }
+ public int size() { return 0; }
+ });
+ assertNotNull(list);
+ assertTrue(!(list instanceof Serializable));
+ }
}
1.3 +22 -2 jakarta-commons/collections/src/test/org/apache/commons/collections/primitives/adapters/TestListIntList.java
Index: TestListIntList.java
===================================================================
RCS file: /home/cvs/jakarta-commons/collections/src/test/org/apache/commons/collections/primitives/adapters/TestListIntList.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- TestListIntList.java 28 Feb 2003 00:17:56 -0000 1.2
+++ TestListIntList.java 1 Mar 2003 00:47:29 -0000 1.3
@@ -57,6 +57,8 @@
package org.apache.commons.collections.primitives.adapters;
+import java.io.Serializable;
+import java.util.AbstractList;
import java.util.ArrayList;
import junit.framework.Test;
@@ -133,6 +135,24 @@
public void testFullListCompatibility() {
// XXX FIX ME XXX
// need to add a serialized form to cvs
+ }
+ public void testWrapNull() {
+ assertNull(ListIntList.wrap(null));
+ }
+
+ public void testWrapSerializable() {
+ IntList list = ListIntList.wrap(new ArrayList());
+ assertNotNull(list);
+ assertTrue(list instanceof Serializable);
+ }
+
+ public void testWrapNonSerializable() {
+ IntList list = ListIntList.wrap(new AbstractList() {
+ public Object get(int i) { throw new IndexOutOfBoundsException(); }
+ public int size() { return 0; }
+ });
+ assertNotNull(list);
+ assertTrue(!(list instanceof Serializable));
}
}
1.1 jakarta-commons/collections/src/test/org/apache/commons/collections/primitives/adapters/TestCollectionIntCollection.java
Index: TestCollectionIntCollection.java
===================================================================
/*
* $Header: /home/cvs/jakarta-commons/collections/src/test/org/apache/commons/collections/primitives/adapters/TestCollectionIntCollection.java,v 1.1 2003/03/01 00:47:29 rwaldhoff Exp $
* ====================================================================
* The Apache Software License, Version 1.1
*
* Copyright (c) 2003 The Apache Software Foundation. All rights
* reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
*
* 3. The end-user documentation included with the redistribution, if
* any, must include the following acknowledgment:
* "This product includes software developed by the
* Apache Software Foundation (http://www.apache.org/)."
* Alternately, this acknowledgment may appear in the software itself,
* if and wherever such third-party acknowledgments normally appear.
*
* 4. The names "The Jakarta Project", "Commons", and "Apache Software
* Foundation" must not be used to endorse or promote products derived
* from this software without prior written permission. For written
* permission, please contact apache@apache.org.
*
* 5. Products derived from this software may not be called "Apache"
* nor may "Apache" appear in their names without prior written
* permission of the Apache Software Foundation.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
* ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
* ====================================================================
*
* This software consists of voluntary contributions made by many
* individuals on behalf of the Apache Software Foundation. For more
* information on the Apache Software Foundation, please see
* <http://www.apache.org/>.
*
*/
package org.apache.commons.collections.primitives.adapters;
import java.io.Serializable;
import java.util.AbstractList;
import java.util.ArrayList;
import java.util.List;
import junit.framework.Test;
import junit.framework.TestSuite;
import org.apache.commons.collections.TestObject;
import org.apache.commons.collections.primitives.IntCollection;
/**
* @version $Revision: 1.1 $ $Date: 2003/03/01 00:47:29 $
* @author Rodney Waldhoff
*/
public class TestCollectionIntCollection extends TestObject {
// conventional
// ------------------------------------------------------------------------
public TestCollectionIntCollection(String testName) {
super(testName);
}
public static Test suite() {
return new TestSuite(TestCollectionIntCollection.class);
}
// collections testing framework
// ------------------------------------------------------------------------
protected Object makeObject() {
List list = new ArrayList();
for(int i=0;i<10;i++) {
list.add(new Integer(i));
}
return new CollectionIntCollection(list);
}
public void testSerializeDeserializeThenCompare() {
// Collection.equal contract doesn't work that way
}
/** @todo need to add serialized form to cvs */
public void testCanonicalEmptyCollectionExists() {
// XXX FIX ME XXX
// need to add a serialized form to cvs
}
/** @todo need to add serialized form to cvs */
public void testCanonicalFullCollectionExists() {
// XXX FIX ME XXX
// need to add a serialized form to cvs
}
// tests
// ------------------------------------------------------------------------
public void testWrapNull() {
assertNull(CollectionIntCollection.wrap(null));
}
public void testWrapSerializable() {
IntCollection collection = CollectionIntCollection.wrap(new ArrayList());
assertNotNull(collection);
assertTrue(collection instanceof Serializable);
}
public void testWrapNonSerializable() {
IntCollection collection = CollectionIntCollection.wrap(new AbstractList() {
public Object get(int i) { throw new IndexOutOfBoundsException(); }
public int size() { return 0; }
});
assertNotNull(collection);
assertTrue(!(collection instanceof Serializable));
}
}
1.1 jakarta-commons/collections/src/test/org/apache/commons/collections/primitives/adapters/TestIntCollectionCollection.java
Index: TestIntCollectionCollection.java
===================================================================
/*
* $Header: /home/cvs/jakarta-commons/collections/src/test/org/apache/commons/collections/primitives/adapters/TestIntCollectionCollection.java,v 1.1 2003/03/01 00:47:29 rwaldhoff Exp $
* ====================================================================
* The Apache Software License, Version 1.1
*
* Copyright (c) 2003 The Apache Software Foundation. All rights
* reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
*
* 3. The end-user documentation included with the redistribution, if
* any, must include the following acknowledgment:
* "This product includes software developed by the
* Apache Software Foundation (http://www.apache.org/)."
* Alternately, this acknowledgment may appear in the software itself,
* if and wherever such third-party acknowledgments normally appear.
*
* 4. The names "The Jakarta Project", "Commons", and "Apache Software
* Foundation" must not be used to endorse or promote products derived
* from this software without prior written permission. For written
* permission, please contact apache@apache.org.
*
* 5. Products derived from this software may not be called "Apache"
* nor may "Apache" appear in their names without prior written
* permission of the Apache Software Foundation.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
* ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
* ====================================================================
*
* This software consists of voluntary contributions made by many
* individuals on behalf of the Apache Software Foundation. For more
* information on the Apache Software Foundation, please see
* <http://www.apache.org/>.
*
*/
package org.apache.commons.collections.primitives.adapters;
import java.io.Serializable;
import java.util.Collection;
import junit.framework.Test;
import junit.framework.TestSuite;
import org.apache.commons.collections.TestObject;
import org.apache.commons.collections.primitives.AbstractRandomAccessIntList;
import org.apache.commons.collections.primitives.ArrayIntList;
import org.apache.commons.collections.primitives.IntList;
/**
* @version $Revision: 1.1 $ $Date: 2003/03/01 00:47:29 $
* @author Rodney Waldhoff
*/
public class TestIntCollectionCollection extends TestObject {
// conventional
// ------------------------------------------------------------------------
public TestIntCollectionCollection(String testName) {
super(testName);
}
public static Test suite() {
return new TestSuite(TestIntCollectionCollection.class);
}
// collections testing framework
// ------------------------------------------------------------------------
protected Object makeObject() {
IntList list = new ArrayIntList();
for(int i=0;i<10;i++) {
list.add(i);
}
return new IntCollectionCollection(list);
}
public void testSerializeDeserializeThenCompare() {
// Collection.equal contract doesn't work that way
}
/** @todo need to add serialized form to cvs */
public void testCanonicalEmptyCollectionExists() {
// XXX FIX ME XXX
// need to add a serialized form to cvs
}
/** @todo need to add serialized form to cvs */
public void testCanonicalFullCollectionExists() {
// XXX FIX ME XXX
// need to add a serialized form to cvs
}
// tests
// ------------------------------------------------------------------------
public void testWrapNull() {
assertNull(IntCollectionCollection.wrap(null));
}
public void testWrapSerializable() {
Collection collection = IntCollectionCollection.wrap(new ArrayIntList());
assertNotNull(collection);
assertTrue(collection instanceof Serializable);
}
public void testWrapNonSerializable() {
Collection collection = IntCollectionCollection.wrap(new AbstractRandomAccessIntList() {
public int get(int i) { throw new IndexOutOfBoundsException(); }
public int size() { return 0; }
});
assertNotNull(collection);
assertTrue(!(collection instanceof Serializable));
}
}
1.1 jakarta-commons/collections/src/test/org/apache/commons/collections/primitives/adapters/TestIntIteratorIterator.java
Index: TestIntIteratorIterator.java
===================================================================
/*
* $Header: /home/cvs/jakarta-commons/collections/src/test/org/apache/commons/collections/primitives/adapters/TestIntIteratorIterator.java,v 1.1 2003/03/01 00:47:29 rwaldhoff Exp $
* ====================================================================
* The Apache Software License, Version 1.1
*
* Copyright (c) 2003 The Apache Software Foundation. All rights
* reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
*
* 3. The end-user documentation included with the redistribution, if
* any, must include the following acknowledgment:
* "This product includes software developed by the
* Apache Software Foundation (http://www.apache.org/)."
* Alternately, this acknowledgment may appear in the software itself,
* if and wherever such third-party acknowledgments normally appear.
*
* 4. The names "The Jakarta Project", "Commons", and "Apache Software
* Foundation" must not be used to endorse or promote products derived
* from this software without prior written permission. For written
* permission, please contact apache@apache.org.
*
* 5. Products derived from this software may not be called "Apache"
* nor may "Apache" appear in their names without prior written
* permission of the Apache Software Foundation.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
* ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
* ====================================================================
*
* This software consists of voluntary contributions made by many
* individuals on behalf of the Apache Software Foundation. For more
* information on the Apache Software Foundation, please see
* <http://www.apache.org/>.
*
*/
package org.apache.commons.collections.primitives.adapters;
import java.util.Iterator;
import junit.framework.Test;
import junit.framework.TestSuite;
import org.apache.commons.collections.iterators.TestIterator;
import org.apache.commons.collections.primitives.ArrayIntList;
import org.apache.commons.collections.primitives.IntList;
/**
* @version $Revision: 1.1 $ $Date: 2003/03/01 00:47:29 $
* @author Rodney Waldhoff
*/
public class TestIntIteratorIterator extends TestIterator {
// conventional
// ------------------------------------------------------------------------
public TestIntIteratorIterator(String testName) {
super(testName);
}
public static Test suite() {
return new TestSuite(TestIntIteratorIterator.class);
}
// collections testing framework
// ------------------------------------------------------------------------
public Object makeObject() {
return makeFullIterator();
}
public Iterator makeEmptyIterator() {
return IntIteratorIterator.wrap(makeEmptyIntList().iterator());
}
public Iterator makeFullIterator() {
return IntIteratorIterator.wrap(makeFullIntList().iterator());
}
protected IntList makeEmptyIntList() {
return new ArrayIntList();
}
protected IntList makeFullIntList() {
IntList list = makeEmptyIntList();
int[] elts = getFullElements();
for(int i=0;i<elts.length;i++) {
list.add(elts[i]);
}
return list;
}
public int[] getFullElements() {
return new int[] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
}
// tests
// ------------------------------------------------------------------------
}
1.1 jakarta-commons/collections/src/test/org/apache/commons/collections/primitives/adapters/TestIntListIteratorListIterator.java
Index: TestIntListIteratorListIterator.java
===================================================================
/*
* $Header: /home/cvs/jakarta-commons/collections/src/test/org/apache/commons/collections/primitives/adapters/TestIntListIteratorListIterator.java,v 1.1 2003/03/01 00:47:29 rwaldhoff Exp $
* ====================================================================
* The Apache Software License, Version 1.1
*
* Copyright (c) 2003 The Apache Software Foundation. All rights
* reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
*
* 3. The end-user documentation included with the redistribution, if
* any, must include the following acknowledgment:
* "This product includes software developed by the
* Apache Software Foundation (http://www.apache.org/)."
* Alternately, this acknowledgment may appear in the software itself,
* if and wherever such third-party acknowledgments normally appear.
*
* 4. The names "The Jakarta Project", "Commons", and "Apache Software
* Foundation" must not be used to endorse or promote products derived
* from this software without prior written permission. For written
* permission, please contact apache@apache.org.
*
* 5. Products derived from this software may not be called "Apache"
* nor may "Apache" appear in their names without prior written
* permission of the Apache Software Foundation.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
* ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
* ====================================================================
*
* This software consists of voluntary contributions made by many
* individuals on behalf of the Apache Software Foundation. For more
* information on the Apache Software Foundation, please see
* <http://www.apache.org/>.
*
*/
package org.apache.commons.collections.primitives.adapters;
import java.util.Iterator;
import java.util.NoSuchElementException;
import junit.framework.Test;
import junit.framework.TestSuite;
import org.apache.commons.collections.iterators.TestIterator;
import org.apache.commons.collections.primitives.ArrayIntList;
import org.apache.commons.collections.primitives.IntList;
/**
* @todo should extend TestListIterator when there is one
* @version $Revision: 1.1 $ $Date: 2003/03/01 00:47:29 $
* @author Rodney Waldhoff
*/
public class TestIntListIteratorListIterator extends TestIterator {
// conventional
// ------------------------------------------------------------------------
public TestIntListIteratorListIterator(String testName) {
super(testName);
}
public static Test suite() {
return new TestSuite(TestIntIteratorIterator.class);
}
// collections testing framework
// ------------------------------------------------------------------------
public Object makeObject() {
return makeFullIterator();
}
public Iterator makeEmptyIterator() {
return IntListIteratorListIterator.wrap(makeEmptyIntList().listIterator());
}
public Iterator makeFullIterator() {
return IntListIteratorListIterator.wrap(makeFullIntList().listIterator());
}
protected IntList makeEmptyIntList() {
return new ArrayIntList();
}
protected IntList makeFullIntList() {
IntList list = makeEmptyIntList();
int[] elts = getFullElements();
for(int i=0;i<elts.length;i++) {
list.add(elts[i]);
}
return list;
}
public int[] getFullElements() {
return new int[] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
}
// tests
// ------------------------------------------------------------------------
public void testNextHasNextRemove() {
int[] elements = getFullElements();
Iterator iter = makeFullIterator();
for(int i=0;i<elements.length;i++) {
assertTrue(iter.hasNext());
assertEquals(new Integer(elements[i]),iter.next());
if(supportsRemove()) {
iter.remove();
}
}
assertTrue(! iter.hasNext() );
}
public void testEmptyIterator() {
assertTrue( ! makeEmptyIterator().hasNext() );
try {
makeEmptyIterator().next();
fail("Expected NoSuchElementException");
} catch(NoSuchElementException e) {
// expected
}
if(supportsRemove()) {
try {
makeEmptyIterator().remove();
fail("Expected IllegalStateException");
} catch(IllegalStateException e) {
// expected
}
}
}
public void testRemoveBeforeNext() {
if(supportsRemove()) {
try {
makeFullIterator().remove();
fail("Expected IllegalStateException");
} catch(IllegalStateException e) {
// expected
}
}
}
public void testRemoveAfterRemove() {
if(supportsRemove()) {
Iterator iter = makeFullIterator();
iter.next();
iter.remove();
try {
iter.remove();
fail("Expected IllegalStateException");
} catch(IllegalStateException e) {
// expected
}
}
}
}
1.1 jakarta-commons/collections/src/test/org/apache/commons/collections/primitives/adapters/TestIteratorIntIterator.java
Index: TestIteratorIntIterator.java
===================================================================
/*
* $Header: /home/cvs/jakarta-commons/collections/src/test/org/apache/commons/collections/primitives/adapters/TestIteratorIntIterator.java,v 1.1 2003/03/01 00:47:29 rwaldhoff Exp $
* ====================================================================
* The Apache Software License, Version 1.1
*
* Copyright (c) 2003 The Apache Software Foundation. All rights
* reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
*
* 3. The end-user documentation included with the redistribution, if
* any, must include the following acknowledgment:
* "This product includes software developed by the
* Apache Software Foundation (http://www.apache.org/)."
* Alternately, this acknowledgment may appear in the software itself,
* if and wherever such third-party acknowledgments normally appear.
*
* 4. The names "The Jakarta Project", "Commons", and "Apache Software
* Foundation" must not be used to endorse or promote products derived
* from this software without prior written permission. For written
* permission, please contact apache@apache.org.
*
* 5. Products derived from this software may not be called "Apache"
* nor may "Apache" appear in their names without prior written
* permission of the Apache Software Foundation.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
* ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
* ====================================================================
*
* This software consists of voluntary contributions made by many
* individuals on behalf of the Apache Software Foundation. For more
* information on the Apache Software Foundation, please see
* <http://www.apache.org/>.
*
*/
package org.apache.commons.collections.primitives.adapters;
import java.util.ArrayList;
import java.util.List;
import junit.framework.Test;
import junit.framework.TestSuite;
import org.apache.commons.collections.primitives.IntIterator;
import org.apache.commons.collections.primitives.TestIntIterator;
/**
* @version $Revision: 1.1 $ $Date: 2003/03/01 00:47:29 $
* @author Rodney Waldhoff
*/
public class TestIteratorIntIterator extends TestIntIterator {
// conventional
// ------------------------------------------------------------------------
public TestIteratorIntIterator(String testName) {
super(testName);
}
public static Test suite() {
return new TestSuite(TestIteratorIntIterator.class);
}
// collections testing framework
// ------------------------------------------------------------------------
public IntIterator makeEmptyIntIterator() {
return IteratorIntIterator.wrap(makeEmptyList().iterator());
}
public IntIterator makeFullIntIterator() {
return IteratorIntIterator.wrap(makeFullList().iterator());
}
protected List makeEmptyList() {
return new ArrayList();
}
protected List makeFullList() {
List list = makeEmptyList();
int[] elts = getFullElements();
for(int i=0;i<elts.length;i++) {
list.add(new Integer(elts[i]));
}
return list;
}
public int[] getFullElements() {
return new int[] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
}
// tests
// ------------------------------------------------------------------------
}
1.1 jakarta-commons/collections/src/test/org/apache/commons/collections/primitives/adapters/TestListIteratorIntListIterator.java
Index: TestListIteratorIntListIterator.java
===================================================================
/*
* $Header: /home/cvs/jakarta-commons/collections/src/test/org/apache/commons/collections/primitives/adapters/TestListIteratorIntListIterator.java,v 1.1 2003/03/01 00:47:29 rwaldhoff Exp $
* ====================================================================
* The Apache Software License, Version 1.1
*
* Copyright (c) 2003 The Apache Software Foundation. All rights
* reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
*
* 3. The end-user documentation included with the redistribution, if
* any, must include the following acknowledgment:
* "This product includes software developed by the
* Apache Software Foundation (http://www.apache.org/)."
* Alternately, this acknowledgment may appear in the software itself,
* if and wherever such third-party acknowledgments normally appear.
*
* 4. The names "The Jakarta Project", "Commons", and "Apache Software
* Foundation" must not be used to endorse or promote products derived
* from this software without prior written permission. For written
* permission, please contact apache@apache.org.
*
* 5. Products derived from this software may not be called "Apache"
* nor may "Apache" appear in their names without prior written
* permission of the Apache Software Foundation.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
* ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
* ====================================================================
*
* This software consists of voluntary contributions made by many
* individuals on behalf of the Apache Software Foundation. For more
* information on the Apache Software Foundation, please see
* <http://www.apache.org/>.
*
*/
package org.apache.commons.collections.primitives.adapters;
import java.util.ArrayList;
import java.util.List;
import junit.framework.Test;
import junit.framework.TestSuite;
import org.apache.commons.collections.primitives.IntListIterator;
import org.apache.commons.collections.primitives.TestIntListIterator;
/**
* @version $Revision: 1.1 $ $Date: 2003/03/01 00:47:29 $
* @author Rodney Waldhoff
*/
public class TestListIteratorIntListIterator extends TestIntListIterator {
// conventional
// ------------------------------------------------------------------------
public TestListIteratorIntListIterator(String testName) {
super(testName);
}
public static Test suite() {
return new TestSuite(TestListIteratorIntListIterator.class);
}
// collections testing framework
// ------------------------------------------------------------------------
public IntListIterator makeEmptyIntListIterator() {
return ListIteratorIntListIterator.wrap(makeEmptyList().listIterator());
}
public IntListIterator makeFullIntListIterator() {
return ListIteratorIntListIterator.wrap(makeFullList().listIterator());
}
protected List makeEmptyList() {
return new ArrayList();
}
protected List makeFullList() {
List list = makeEmptyList();
int[] elts = getFullElements();
for(int i=0;i<elts.length;i++) {
list.add(new Integer(elts[i]));
}
return list;
}
public int[] getFullElements() {
return new int[] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
}
// tests
// ------------------------------------------------------------------------
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org