Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add randomized tests for adding/removing keys #15

Closed
Tracked by #1
Manav-Aggarwal opened this issue Nov 9, 2022 · 0 comments · Fixed by #16
Closed
Tracked by #1

Add randomized tests for adding/removing keys #15

Manav-Aggarwal opened this issue Nov 9, 2022 · 0 comments · Fixed by #16
Assignees

Comments

@Manav-Aggarwal
Copy link
Member

Manav-Aggarwal commented Nov 9, 2022

Reference comment: #8 (comment)

We'd like to add randomized tests for Set and Remove that add new keys and delete existing keys respectively. Mainly, we'd like to make sure that Deep Subtrees are constructed with all the data they might need to rebalance correctly when new keys are added or existing keys are removed.

Light fuzzing in the tests might be useful as well.

Suggested tests:

  • Batch-add random keys.
  • Randomize both the operations, Set and Remove, and the keys they are operating on so calls to both are interleaved together in no particular order.

Make sure the tree rebalances correctly at each stage (check against existing IAVL tree: mutable tree).

Overall, the goal of this issue is to have strong substantial tests for an IAVL Deep Subtree.

@Manav-Aggarwal Manav-Aggarwal self-assigned this Nov 9, 2022
@Manav-Aggarwal Manav-Aggarwal changed the title Add randomized tests for adding/removing keys Add randomized tests for adding/removing keys and other exported methods Nov 9, 2022
@Manav-Aggarwal Manav-Aggarwal changed the title Add randomized tests for adding/removing keys and other exported methods Add randomized tests for adding/removing keys and other public methods Nov 9, 2022
@Manav-Aggarwal Manav-Aggarwal changed the title Add randomized tests for adding/removing keys and other public methods Add randomized tests for adding/removing keys and each other public method Nov 9, 2022
@Manav-Aggarwal Manav-Aggarwal linked a pull request Nov 21, 2022 that will close this issue
5 tasks
@Manav-Aggarwal Manav-Aggarwal changed the title Add randomized tests for adding/removing keys and each other public method Add randomized tests for adding/removing keys Nov 25, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant