I've started going through the Apache Commons projects running tests and sample code.
beanutils
One problem (that appears as two errors out of 556) that also fails on Sun 5.0 RI but passes on IBM 1.4.2.
testMemoryLeak2(org.apache.commons.beanutils.locale.LocaleBeanificationTestCase)java.lang.OutOfMemoryError at org.apache.commons.beanutils.locale.LocaleBeanificationTestCase.testMemoryLeak2(LocaleBeanificationTestCase.java:182) at java.lang.reflect.AccessibleObject.invokeV(AccessibleObject.java:205)
betwixt
2 failures out of 644. I suspect they are Hashtable.Entry introspection assumptions and thus possibly invalid tests? The test xml looks like:
<Hashtable> <empty>false</empty> <entry> <key>two</key> <keyHash>115276</keyHash> <value>deux</value> </entry> <entry> <key>one</key> <keyHash>110182</keyHash> <value>un</value> </entry> <entry> <key>three</key> <keyHash>110339486</keyHash> <value>trois</value> </entry> </Hashtable>
where as the expected xml does not include the keyHash items.
1) testHashMapWriteEmpty(org.apache.commons.betwixt.TestMaps)junit.framework.AssertionFailedError: (Unequal child nodes@entry) expected:<2> but was:<3> at org.apache.commons.betwixt.xmlunit.XmlTestCase.testIsomorphic(XmlTestCase.java:300) at org.apache.commons.betwixt.xmlunit.XmlTestCase.testIsomorphic(XmlTestCase.java:312) at org.apache.commons.betwixt.xmlunit.XmlTestCase.testIsomorphic(XmlTestCase.java:312) at org.apache.commons.betwixt.xmlunit.XmlTestCase.xmlAssertIsomorphic(XmlTestCase.java:175) at org.apache.commons.betwixt.xmlunit.XmlTestCase.xmlAssertIsomorphic(XmlTestCase.java:151) at org.apache.commons.betwixt.xmlunit.XmlTestCase.xmlAssertIsomorphic(XmlTestCase.java:141) at org.apache.commons.betwixt.TestMaps.testHashMapWriteEmpty(TestMaps.java:68) at java.lang.reflect.AccessibleObject.invokeV(AccessibleObject.java:205) 2) testHashMapWriteNotEmpty(org.apache.commons.betwixt.TestMaps)junit.framework.AssertionFailedError: (Unequal child nodes@entry) expected:<2> but was:<3> at org.apache.commons.betwixt.xmlunit.XmlTestCase.testIsomorphic(XmlTestCase.java:300) at org.apache.commons.betwixt.xmlunit.XmlTestCase.testIsomorphic(XmlTestCase.java:312) at org.apache.commons.betwixt.xmlunit.XmlTestCase.testIsomorphic(XmlTestCase.java:312) at org.apache.commons.betwixt.xmlunit.XmlTestCase.xmlAssertIsomorphic(XmlTestCase.java:175) at org.apache.commons.betwixt.xmlunit.XmlTestCase.xmlAssertIsomorphic(XmlTestCase.java:151) at org.apache.commons.betwixt.xmlunit.XmlTestCase.xmlAssertIsomorphic(XmlTestCase.java:141) at org.apache.commons.betwixt.TestMaps.testHashMapWriteNotEmpty(TestMaps.java:105) at java.lang.reflect.AccessibleObject.invokeV(AccessibleObject.java:205)
chain
2 errors both the same issue. Needs further investigation.
ClassCastException: org.apache.commons.chain.impl.ContextBase$MapEntryImpl incompatible with java.util.HashMap$Entry
cli
Raised HARMONY-552 but there are still 8 failures and 1 error. Some look like ordering issues and might be invalid tests. Needs further investigation.
codec
2 errors both the same issue. Needs further investigation.
testDefaultEncoding(org.apache.commons.codec.net.URLCodecTest)org.apache.commons.codec.EncoderException: UnicodeBig at org.apache.commons.codec.net.URLCodec.encode(URLCodec.java:247) at org.apache.commons.codec.net.URLCodecTest.testDefaultEncoding(URLCodecTest.java:274) at java.lang.reflect.AccessibleObject.invokeV(AccessibleObject.java:205)
collections
Wow! There are an impressive number of tests. I've raised some JIRAs - HARMONY-389, HARMONY-390, HARMONY-403 - but there are still more failures to investigate. Quite a few failures seem to relate to hashcode issues mentioned in HARMONY-403.
configuration
Requires HARMONY-528. Even with this there are several dozen failures and errors to investigate.
daemon
Compiles. There don't seem to be any tests. Need to try the sample code.
dbutils
All tests pass.
digester
All tests pass.
discovery
All tests pass.
fileupload
All tests pass.
httpclient
Tests require a jks keystore. It should be possible to convert them and fix the tests to use the default keystore type rather than jks specifically.
io
One error. Raised HARMONY-517 with fix.
jelly
All tests pass.
jexl
All tests pass.
jxpath
3 failures to investigate.
1) Evaluating <format-number(123456789, 'D.0', 'test')> expected:<123456789.0> but was:<D123456789.0> junit.framework.AssertionFailedError: Evaluating <format-number(123456789, 'D.0', 'test')> expected:<123456789.0> but was:<D123456789.0> at org.apache.commons.jxpath.JXPathTestCase.assertXPathValue(JXPathTestCase.java:54) yat org.apache.commons.jxpath.ri.compiler.CoreFunctionTest.testFormatNumberFunction(CoreFunctionTest.java:176) 2) Evaluating pointer <//product:name> expected:<...goods...> but was:<...product...> junit.framework.ComparisonFailure: Evaluating pointer <//product:name> expected:<...goods...> but was:<...product...> at org.apache.commons.jxpath.JXPathTestCase.assertXPathPointer(JXPathTestCase.java:124) at org.apache.commons.jxpath.JXPathTestCase.assertXPathValueAndPointer(JXPathTestCase.java:140) at org.apache.commons.jxpath.ri.model.XMLModelTestCase.testNamespaceMapping(XMLModelTestCase.java:806) 3) Evaluating pointer <//product:name> expected:<...goods...> but was:<...product...> junit.framework.ComparisonFailure: Evaluating pointer <//product:name> expected:<...goods...> but was:<...product...> at org.apache.commons.jxpath.JXPathTestCase.assertXPathPointer(JXPathTestCase.java:124) at org.apache.commons.jxpath.JXPathTestCase.assertXPathValueAndPointer(JXPathTestCase.java:140) at org.apache.commons.jxpath.ri.model.XMLModelTestCase.testNamespaceMapping(XMLModelTestCase.java:806)
lang
Raised HARMONY-487, HARMONY-489, HARMONY-493, and HARMONY-498. The remaining failures might be reflection differences which could be invalid tests?
logging
All tests pass - the log4j ones at least.
math
5 failures still to investigate.
modeler
Requires javax.management. All tests pass with mx4j, see HARMONY-560.
net
Latest svn needs String.contains(CharSequence). Version 1.4.1 needed HARMONY-502 to pass all tests.
pool
All tests pass. They seem to be a little unstable. Some tests fail/hang on sun50.
primitives
All tests pass.
validator
Raised HARMONY-539, but there are still a couple more issues to investigate.
todo
attributes, dbcp, el, email, launcher, transaction, and vfs still need to be tested.