Index: modules/luni/src/main/java/java/util/Collections.java =================================================================== --- modules/luni/src/main/java/java/util/Collections.java.orig 2006-06-02 08:59:27.000000000 +0100 +++ modules/luni/src/main/java/java/util/Collections.java 2006-06-02 12:44:20.000000000 +0100 @@ -911,6 +911,10 @@ public Object[] toArray(Object[] array) { return c.toArray(array); } + + public String toString() { + return c.toString(); + } } private static class UnmodifiableRandomAccessList extends UnmodifiableList @@ -1205,6 +1209,10 @@ public Collection values() { return new UnmodifiableCollection(m.values()); } + + public String toString() { + return m.toString(); + } } private static class UnmodifiableSet extends UnmodifiableCollection Index: modules/luni/src/test/java/tests/api/java/util/CollectionsTest.java =================================================================== --- modules/luni/src/test/java/tests/api/java/util/CollectionsTest.java.orig 2006-06-02 08:59:38.000000000 +0100 +++ modules/luni/src/test/java/tests/api/java/util/CollectionsTest.java 2006-06-02 12:53:37.000000000 +0100 @@ -1875,6 +1875,23 @@ } /** + * Test unmodifiable objects toString methods + */ + public void test_unmodifiable_toString_methods() { + // Regression for HARMONY-552 + ArrayList al = new ArrayList(); + al.add("a"); + al.add("b"); + Collection uc = Collections.unmodifiableCollection(al); + assertEquals("[a, b]", uc.toString()); + HashMap m = new HashMap(); + m.put("one", "1"); + m.put("two", "2"); + Map um = Collections.unmodifiableMap(m); + assertEquals("{one=1, two=2}", um.toString()); + } + + /** * Sets up the fixture, for example, open a network connection. This method * is called before a test is executed. */