scolebourne 2003/08/31 10:52:13
Modified: collections/src/test/org/apache/commons/collections
TestMapUtils.java
collections/src/java/org/apache/commons/collections
MapUtils.java
Log:
Update the MapUtils to output 'null' if null map
bug 20740
Revision Changes Path
1.10 +12 -4
jakarta-commons/collections/src/test/org/apache/commons/collections/TestMapUtils.java
Index: TestMapUtils.java
===================================================================
RCS file:
/home/cvs/jakarta-commons/collections/src/test/org/apache/commons/collections/TestMapUtils.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- TestMapUtils.java 31 Aug 2003 17:28:43 -0000 1.9
+++ TestMapUtils.java 31 Aug 2003 17:52:13 -0000 1.10
@@ -400,17 +400,25 @@
public void testVerbosePrintNullLabelAndMap() {
final ByteArrayOutputStream out = new ByteArrayOutputStream();
final PrintStream outPrint = new PrintStream(out);
+
+ outPrint.println("null");
+ final String EXPECTED_OUT = out.toString();
+ out.reset();
MapUtils.verbosePrint(outPrint, null, null);
- assertEquals("", out.toString());
+ assertEquals(EXPECTED_OUT, out.toString());
}
public void testDebugPrintNullLabelAndMap() {
final ByteArrayOutputStream out = new ByteArrayOutputStream();
final PrintStream outPrint = new PrintStream(out);
+ outPrint.println("null");
+ final String EXPECTED_OUT = out.toString();
+ out.reset();
+
MapUtils.debugPrint(outPrint, null, null);
- assertEquals("", out.toString());
+ assertEquals(EXPECTED_OUT, out.toString());
}
public void testVerbosePrintNullStream() {
1.32 +26 -22
jakarta-commons/collections/src/java/org/apache/commons/collections/MapUtils.java
Index: MapUtils.java
===================================================================
RCS file:
/home/cvs/jakarta-commons/collections/src/java/org/apache/commons/collections/MapUtils.java,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -r1.31 -r1.32
--- MapUtils.java 31 Aug 2003 17:26:43 -0000 1.31
+++ MapUtils.java 31 Aug 2003 17:52:13 -0000 1.32
@@ -686,11 +686,11 @@
* When the value is a Map, recursive behaviour occurs.
*
* @param out the stream to print to, must not be null
- * @param label the label to be applied to the output generated. This
- * may well be the key associated with this map within a
- * surrounding map in which this is nested. If the label is
- * <code>null</code> then no label is output.
- * @param map the map to print, may be <code>null</code>
+ * @param label The label to be used, may be <code>null</code>.
+ * If <code>null</code>, the label is not output.
+ * It typically represents the name of the property in a bean or similar.
+ * @param map The map to print, may be <code>null</code>.
+ * If <code>null</code>, the text 'null' is output.
* @throws NullPointerException if the stream is <code>null</code>
*/
public static synchronized void verbosePrint(
@@ -710,11 +710,11 @@
* When the value is a Map, recursive behaviour occurs.
*
* @param out the stream to print to, must not be null
- * @param label the label to be applied to the output generated. This
- * may well be the key associated with this map within a
- * surrounding map in which this is nested. If the label is
- * <code>null</code> then no label is output.
- * @param map the map to print, may be <code>null</code>
+ * @param label The label to be used, may be <code>null</code>.
+ * If <code>null</code>, the label is not output.
+ * It typically represents the name of the property in a bean or similar.
+ * @param map The map to print, may be <code>null</code>.
+ * If <code>null</code>, the text 'null' is output.
* @throws NullPointerException if the stream is <code>null</code>
*/
public static synchronized void debugPrint(
@@ -756,11 +756,11 @@
* value.
*
* @param out the stream to print to
- * @param label the label to be applied to the output generated. This
- * may well be the key associated with this map within a
- * surrounding map in which this is nested. If the label is
- * <code>null</code>, then it is not output.
- * @param map the map to print, may be <code>null</code>
+ * @param label The label to be used, may be <code>null</code>.
+ * If <code>null</code>, the label is not output.
+ * It typically represents the name of the property in a bean or similar.
+ * @param map The map to print, may be <code>null</code>.
+ * If <code>null</code>, the text 'null' is output.
* @param debug flag indicating whether type names should be output.
* @throws NullPointerException if the stream is <code>null</code>
*/
@@ -772,13 +772,17 @@
printIndent(out);
- if (label != null) {
- out.print(label);
- out.print(" = ");
- out.println(map == null ? "null" : "");
- }
if (map == null) {
+ if (label != null) {
+ out.print(label);
+ out.print(" = ");
+ }
+ out.println("null");
return;
+ }
+ if (label != null) {
+ out.print(label);
+ out.println(" = ");
}
printIndent(out);
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]