I think one of the future directions for Heap
was to add methods that replace a heap's minimum or maximum element, pointing to a new element if the updated value no longer qualifies. I had to add a direct-state initializer to do my tests. And I had to make the invariant-testing code an unconditional method to create the initializer.
It's at: "[Heap] Change value of minimum or maximum element #116"