This is the mail archive of the mauve-patches@sourceware.org mailing list for the Mauve project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

FYI: Update test to follow 1.6 specification behaviour.


A bit of explantion:

The test expects an ArrayIndexOutOfBoundsException where a RuntimeException should be thrown. This is a bug in JDK up to 1.5: while assembling the RuntimeException, the ArrayIndexOutOfBoundsException is raised. This is fixed in JDK 1.6.

See also http://bugs.sun.com/view_bug.do?bug_id=4511992 and http://bugs.sun.com/view_bug.do?bug_id=6204552.

2009-07-09 Mario Torre <neugens@aicas.com>

    * gnu/testlet/java/beans/EventHandler/check14c.java:
    Update test to follow 1.6 specification behaviour.

--
Mario Torre, Software Developer, http://www.jroller.com/neugens/
aicas Allerton Interworks Computer Automated Systems GmbH
Haid-und-Neu-Straße 18 * D-76131 Karlsruhe * Germany
http://www.aicas.com   * Tel: +49-721-663 968-44
pgp key: http://subkeys.pgp.net/ PGP Key ID: 80F240CF
Fingerprint: BA39 9666 94EC 8B73 27FA  FC7C 4086 63E3 80F2 40CF

USt-Id: DE216375633, Handelsregister HRB 109481, AG Mannheim
Geschäftsführer: Dr. James J. Hunt

Please, support open standards:
http://endsoftpatents.org/

# This patch file was generated by NetBeans IDE
# This patch can be applied using context Tools: Apply Diff Patch action on respective folder.
# It uses platform neutral UTF-8 encoding.
# Above lines and this line are ignored by the patching process.
Index: mauve/gnu/testlet/java/beans/EventHandler/check14c.java
--- mauve/gnu/testlet/java/beans/EventHandler/check14c.java Base (1.3)
+++ mauve/gnu/testlet/java/beans/EventHandler/check14c.java Locally Modified (Based On 1.3)
@@ -81,11 +81,10 @@
 
 	public void test(TestHarness harness) {
 
-		// The first test checks whether a ArrayIndexOutOfBoundsException is
-		// thrown
+		// The first test checks whether a RuntimeException is thrown
 		// when the targetMethod cannot be found (Especially because of missing
-		// access
-		// rights).
+		// access rights).
+                // JDK 1.4 and 1.5 erroneously throw an ArrayIndexOutOfBoundsException.
 		Listener l = (Listener) EventHandler.create(Listener.class, this,
 				"targetMethod");
 
@@ -93,7 +92,7 @@
 		try {
 			l.listen();
 		} catch (Exception e) {
-			correctException = e.getClass() == ArrayIndexOutOfBoundsException.class;
+			correctException = e.getClass() == RuntimeException.class;
 		}
 		harness.check(correctException, true, "missing target method");
 
@@ -146,10 +145,11 @@
 		// One may think that a creation like this will forward the Event
 		// instance to the 'setEventProperty'
 		// method but this is wrong and will cause a
-		// ArrayIndexOutOfBoundsException to be as if could not
+		// RuntimeException to be as if could not
 		// find a method. In other words: If no property is defined action will
 		// never be treated as a
 		// property but always like a method name.
+                // JDK 1.4 and 1.5 erroneously throw an ArrayIndexOutOfBoundsException.
 		l2 = (Listener2) EventHandler.create(Listener2.class, this,
 				"eventProperty");
 
@@ -157,7 +157,7 @@
 		try {
 			l2.listen(new Event());
 		} catch (Exception e) {
-			correctException = e.getClass() == ArrayIndexOutOfBoundsException.class;
+			correctException = e.getClass() == RuntimeException.class;
 		}
 		harness.check(correctException, true, "action is method");
 

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]