[9] RFR (S) 6191224: (reflect) Misleading detail string in IllegalArgumentException thrown by Array.get<Type>

Chris Plummer chris.plummer at oracle.com
Mon Oct 13 22:26:24 UTC 2014


Hi David and Christian,

New Webrev: http://cr.openjdk.java.net/~cjplummer/6191224/webrev.03/

changes:
-Renamed to reflect/ArrayGetIntException.java
-othervm argument removed
-throws Error on failure rather than exit(1)
-Indentation set at 4 instead of 2
-Open brace at end of line instead of at start of new line.

When the test fails, it now outputs:

STDOUT:
2147483647
Test #1 PASSES
java.lang.IllegalArgumentException: Argument is not an array
Test #2 FAILS - incorrect message
STDERR:
java.lang.Error: Test #2 FAILS - incorrect message
     at ArrayGetIntException.failTest(ArrayGetIntException.java:83)
     at ArrayGetIntException.main(ArrayGetIntException.java:56)
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
     at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
     at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
     at java.lang.reflect.Method.invoke(Method.java:483)
     at 
com.sun.javatest.regtest.MainWrapper$MainThread.run(MainWrapper.java:94)
     at java.lang.Thread.run(Thread.java:745)

JavaTest Message: Test threw exception: java.lang.Error: Test #2 FAILS - 
incorrect message
JavaTest Message: shutting down test

STATUS:Failed.`main' threw exception: java.lang.Error: Test #2 FAILS - 
incorrect message

thanks,

Chris

On 10/8/14 10:53 PM, Chris Plummer wrote:
> Hi Christian,
>
> [If this went out twice, ignore the other copy.]
>
> On 10/8/14 7:40 PM, Christian Tornqvist wrote:
>> Hi Chris,
>>
>> First of all, thanks for writing a regression test :)
>>
>> The naming of the test should follow the Hotspot test naming guidelines
>> (https://wiki.openjdk.java.net/display/HotSpot/Naming+HotSpot+JTReg+Tests). 
>>
> I'll wait for your response to David.
>>
>>> 28  * @run main/othervm Test6191224
>> Is there a reason you need to run it with /othervm?
> Copy and paste from another test case. Probably no need for it.
>> When the test fails you should throw an exception instead of calling
>> System.exit(), jtreg doesn't like System.exit
> Ok. This was also copy and paste from the test case I used as an 
> example. It seems Error is common for test failures, so I'll use that.
>> (http://openjdk.java.net/jtreg/faq.html#question2.6)
> "% bringover -p <workspace> test". A bit dated perhaps. ;)
>
> I'll get a new webrev out once I've cleaned it up.
>
> thanks,
>
> Chris
>> Thanks,
>> Christian
>>
>>
>> -----Original Message-----
>> From: hotspot-runtime-dev
>> [mailto:hotspot-runtime-dev-bounces at openjdk.java.net] On Behalf Of Chris
>> Plummer
>> Sent: Wednesday, October 8, 2014 8:08 PM
>> To:hotspot-runtime-dev at openjdk.java.net
>> Subject: [9] RFR (S) 6191224: (reflect) Misleading detail string in
>> IllegalArgumentException thrown by Array.get<Type>
>>
>> Hi,
>>
>> Please review this cleanup of a misleading exception message.
>>
>> Summary: The test case shows that an exception is thrown with the 
>> message
>> "Argument is not an array", when in fact the argument is an array, but a
>> primitive type array is actually what was expected. Fixed by 
>> differentiating
>> between failing because an array was expected and failing because a
>> primitive type array was expected.
>>
>> Webrev:http://cr.openjdk.java.net/~cjplummer/6191224/webrev.00/
>> Bug:https://bugs.openjdk.java.net/browse/JDK-6191224
>>
>> Tested with:
>>       jprt "-testset hotspot"
>>       JTReg with hotspot tests and some jdk tests
>>       JCK vm, lang, api
>>       vm.quick.testlist
>>       runthese
>>
>> Output for the regression test when passing is:
>>
>> 2147483647
>> Test #1 PASSES
>> java.lang.IllegalArgumentException: Argument is not a primitive type 
>> array
>> Test #2 PASSES
>> java.lang.IllegalArgumentException: Argument is not an array Test #3 
>> PASSES
>>
>> And when it fails:
>>
>> 2147483647
>> Test #1 PASSES
>> java.lang.IllegalArgumentException: Argument is not an array Test #2 
>> FAILS -
>> incorrect message
>>
>> thanks,
>>
>> Chris
>>
>>
>



More information about the hotspot-runtime-dev mailing list