scolebourne 2003/10/30 17:24:33
Modified: collections/src/test/org/apache/commons/collections
AbstractTestMap.java
Log:
Allow subclasses to change the confirmed map
Ensure views pickup correct serialization methods
Revision Changes Path
1.9 +33 -12
jakarta-commons/collections/src/test/org/apache/commons/collections/AbstractTestMap.java
Index: AbstractTestMap.java
===================================================================
RCS file:
/home/cvs/jakarta-commons/collections/src/test/org/apache/commons/collections/AbstractTestMap.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- AbstractTestMap.java 10 Oct 2003 21:19:39 -0000 1.8
+++ AbstractTestMap.java 31 Oct 2003 01:24:32 -0000 1.9
@@ -412,6 +412,15 @@
return makeEmptyMap();
}
+ /**
+ * Override to return a map other than HashMap as the confirmed map.
+ *
+ * @return a map that is known to be valid
+ */
+ protected Map makeConfirmedMap() {
+ return new HashMap();
+ }
+
//-----------------------------------------------------------------------
/**
* Test to ensure the test setup is working properly. This method checks
@@ -841,7 +850,7 @@
resetEmpty();
- m2 = new HashMap();
+ m2 = makeConfirmedMap();
Object[] keys = getSampleKeys();
Object[] values = getSampleValues();
for(int i = 0; i < keys.length; i++) {
@@ -1056,7 +1065,7 @@
private Map.Entry[] makeEntryArray(Object[] keys, Object[] values) {
Map.Entry[] result = new Map.Entry[keys.length];
for (int i = 0; i < keys.length; i++) {
- Map map = new HashMap();
+ Map map = makeConfirmedMap();
map.put(keys[i], values[i]);
result[i] = (Map.Entry) map.entrySet().iterator().next();
}
@@ -1107,11 +1116,16 @@
// Collection views don't support add operations.
return false;
}
-
protected boolean isRemoveSupported() {
// Entry set should only support remove if map does
return AbstractTestMap.this.isRemoveSupported();
}
+ protected boolean supportsEmptyCollections() {
+ return AbstractTestMap.this.supportsEmptyCollections();
+ }
+ protected boolean supportsFullCollections() {
+ return AbstractTestMap.this.supportsFullCollections();
+ }
protected void resetFull() {
AbstractTestMap.this.resetFull();
@@ -1167,14 +1181,18 @@
protected boolean isNullSupported() {
return AbstractTestMap.this.isAllowNullKey();
}
-
protected boolean isAddSupported() {
return false;
}
-
protected boolean isRemoveSupported() {
return AbstractTestMap.this.isRemoveSupported();
}
+ protected boolean supportsEmptyCollections() {
+ return AbstractTestMap.this.supportsEmptyCollections();
+ }
+ protected boolean supportsFullCollections() {
+ return AbstractTestMap.this.supportsFullCollections();
+ }
protected void resetEmpty() {
AbstractTestMap.this.resetEmpty();
@@ -1232,14 +1250,18 @@
protected boolean isNullSupported() {
return AbstractTestMap.this.isAllowNullKey();
}
-
protected boolean isAddSupported() {
return false;
}
-
protected boolean isRemoveSupported() {
return AbstractTestMap.this.isRemoveSupported();
}
+ protected boolean supportsEmptyCollections() {
+ return AbstractTestMap.this.supportsEmptyCollections();
+ }
+ protected boolean supportsFullCollections() {
+ return AbstractTestMap.this.supportsFullCollections();
+ }
protected boolean areEqualElementsDistinguishable() {
// equal values are associated with different keys, so they are
@@ -1287,10 +1309,9 @@
protected void resetEmpty() {
this.map = makeEmptyMap();
views();
- this.confirmed = new HashMap();
+ this.confirmed = makeConfirmedMap();
}
-
/**
* Resets the [EMAIL PROTECTED] #map}, [EMAIL PROTECTED] #entrySet}, [EMAIL
PROTECTED] #keySet},
* [EMAIL PROTECTED] #values} and [EMAIL PROTECTED] #confirmed} fields to full.
@@ -1298,7 +1319,7 @@
protected void resetFull() {
this.map = makeFullMap();
views();
- this.confirmed = new HashMap();
+ this.confirmed = makeConfirmedMap();
Object[] k = getSampleKeys();
Object[] v = getSampleValues();
for (int i = 0; i < k.length; i++) {
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]