> Changed Tests:
> 
> HashMap/KeySetRemove.java: equal ValueClass keys mapped to null can be 
> removed from HashMap and TreeMap.
> 
> HashMap/NullKeyAtResize.java: null-key resize behavior remains correct when 
> surrounding keys are ValueClass instances.
> 
> HashMap/PutNullKey.java: colliding comparable tree-bin keys are value-capable 
> via @AsValueClass.
> 
> HashMap/ReplaceExisting.java: replacing an existing ValueClass key during 
> active iteration does not corrupt the iterator.
> 
> HashMap/SetValue.java: Map.Entry.setValue() returns the old ValueClass value.
> 
> HashMap/ToArray.java: toArray() coverage is added for ValueClass keys, 
> values, and set elements across hash and linked variants.
> 
> HashMap/TreeBinAssert.java: tree-bin iterator-removal coverage now uses a 
> value-capable key.
> 
> Hashtable/EqualsCast.java: Provider/Hashtable equality now includes matching 
> ValueClass key/value entries.
> 
> Hashtable/SimpleSerialization.java: serialization round-trip now also covers 
> Hashtable<Integer,Integer>.
> 
> LinkedHashMap/ComputeIfAbsentAccessOrder.java: access-order behavior is 
> repeated with Integer keys.
> 
> LinkedHashMap/EmptyMapIterator.java: fail-fast iterator behavior is repeated 
> with Integer key/value entries.
> 
> LinkedList/AddAll.java: append-order behavior is repeated with ValueClass 
> elements.
> 
> LinkedList/Clone.java: clone/equality checks for LinkedList, TreeSet, and 
> TreeMap subclasses now include ValueClass contents.
> 
> Unchanged Tests:
> 
> HashMap/HashMapCloneLeak.java: unchanged because the test depends on 
> WeakReference reachability. Value objects are not valid weak-reference 
> targets, so adding VClass would not match the regression being tested.
> 
> HashMap/OverrideIsEmpty.java: unchanged because the test is about HashMap 
> subclass method dispatch. Value classes cannot extend HashMap, and changing 
> only the key/value payload would not add meaningful value-class coverage.
> 
> HashMap/WhiteBoxResizeTest.java: unchanged because it is a white-box/internal 
> capacity and table-sizing test using reflection/VarHandles over HashMap, 
> LinkedHashMap, HashSet, and WeakHashMap internals. Its purpose is sizing/lazy 
> allocation/resize arithmetic, not key/value equality or value-object behavior.
> 
> HashMap/ToString.java: unchanged because it specifically verifies that 
> HashMap.Entry.toString() does not throw when the map contains null keys or 
> values. Adding value-class keys or values would not extend the original 
> null-handling regression in a meaningful way.
> 
> HashSet/Serialization.java: unchanged because the existing HashSet s...

Bill Huang has updated the pull request incrementally with four additional 
commits since the last revision:

 - Fixed coding format issues.
 - Fixed coding format issues
 - Consolidate java.util.Collections test logic of relugar classes and value 
classes
 - Consolidated test logic of regular classes and value classes

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/32201/files
  - new: https://git.openjdk.org/jdk/pull/32201/files/c8fef6d8..6cd1c3d7

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=32201&range=02
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=32201&range=01-02

  Stats: 558 lines in 22 files changed: 96 ins; 286 del; 176 mod
  Patch: https://git.openjdk.org/jdk/pull/32201.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/32201/head:pull/32201

PR: https://git.openjdk.org/jdk/pull/32201

Reply via email to