chore: ensure consistency of ContextNode
keys and add new tests
#6254
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What this PR does / why we need it:
This PR adds a few more tests for
TreeCache
to ensure the internal invariants of the cache and to verify the structure consistency. The JSDoc were added to theContextNode
interface to explain its invariants and possible states.The test-case implemented in 1b4ed18 covers the current behaviour of the
TreeCache
, that was initially implemented years ago.There is one fix for
ContextNode.key
assignment while creation, but that fix is not critical because the wrong value assignment hasn't seem to cause any real issues.The wrong value just looked very confusing while debugging sessions.
Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:
See individual commits for details.