RFR: 8304013: Add a fast, non-manual alternative to test/jdk/java/util/zip/ZipFile/TestTooManyEntries [v4]

Martin Buchholz martin at openjdk.org
Sun Mar 26 17:09:42 UTC 2023


On Sat, 25 Mar 2023 12:18:46 GMT, Eirik Bjorsnos <duke at openjdk.org> wrote:

>> So I changed the references to this ultimate ZIP structure to read like this:
>> 
>> 'End of central directory record' (END header)
>> 
>> Example:
>> 
>> 
>> /**
>>      * Validate that an 'End of central directory record' (END header)
>>      * where the value of the CEN size field exceeds the position of
>>      * the END header is rejected.
>> 
>> 
>> This way we stick to the 'official' ZIP verbiage but also allow using the shorter 'END header'.
>> 
>> What do you think?
>
>> Either way you should not need a sponsor and should be good to integrated when you are ready
> 
> As a non-committer, I still think I need help from a committer to `/sponsor` this change, right?

> I think this a pretty crazy level of boilerplate noise for a test and that it affects readability negatively. 

I'm with Eirik here.

I've maintained jdk tests for 20 years and have never had to worry about nagging to add javadoc boilerplate.

doclint should restrict itself to checking what's there, not to check for completeness, in tests and private APIs.

And it looks like the jdk makefiles are in fact set up to work this way.  

I see:
./make/Docs.gmk:102:JAVADOC_DISABLED_DOCLINT_WARNINGS := missing

Especially for test methods, the contract of a test is very simple: "do nothing", but possibly throw an informative exception.  If the compiler requires a throws declaration, then I like `throws Throwable`  which evokes this contract.  A javadoc `@throws` declaration is the sort of useless boilerplate that makes people hate Java.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/12231#discussion_r1148596927


More information about the core-libs-dev mailing list