RFR: 8285295: Need better testing for IdentityHashMap
Stuart Marks
smarks at openjdk.java.net
Wed Apr 27 03:24:16 UTC 2022
Basic but fairly comprehensive set of tests for `IdentityHashMap`. The patch in the bug report that breaks `IdentityHashMap` now causes several cases in this new test to fail. There's more that could be done, but the new tests cover most of the core functions of `IdentityHashMap`. Unfortunately it seems difficult to merge this with the existing, comprehensive Collections tests (e.g., MOAT.java) because those tests implicity rely on `equals()`-based contract instead of the special-purpose `==`-based contract used by `IdentityHashMap`.
-------------
Commit messages:
- Refactor contents checking to use checkElements() and checkEntries().
- Rename some tests.
- Rename isIdenticalEntry to hasIdenticalKeyValue.
- Finish writing all pending tests except remove(k,v) and replace(k,v1,v2).
- Some cleanup and more tests.
- Initial cut at IdentityHashMap tests.
Changes: https://git.openjdk.java.net/jdk/pull/8354/files
Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=8354&range=00
Issue: https://bugs.openjdk.java.net/browse/JDK-8285295
Stats: 546 lines in 1 file changed: 546 ins; 0 del; 0 mod
Patch: https://git.openjdk.java.net/jdk/pull/8354.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/8354/head:pull/8354
PR: https://git.openjdk.java.net/jdk/pull/8354
More information about the core-libs-dev
mailing list