feat: add drop key functionality #6

Merged
mvhutz merged 12 commits from feat/drop-item into main 2026-03-20 01:59:55 +00:00

12 Commits

Author SHA1 Message Date
09b5d9d893 feat: 100% mutation test coverage
All checks were successful
CI / Go Lint (pull_request) Successful in 19s
CI / Makefile Lint (pull_request) Successful in 18s
CI / Unit Tests (pull_request) Successful in 16s
CI / Fuzz Tests (pull_request) Successful in 48s
CI / Mutation Tests (pull_request) Successful in 45s
- Fixed mutation coverage to be 1.0, instead of 100.
2026-03-19 21:57:22 -04:00
cd115ba7a2 fix: mutation test threshold should be in config
Some checks failed
CI / Makefile Lint (pull_request) Successful in 16s
CI / Go Lint (pull_request) Successful in 20s
CI / Unit Tests (pull_request) Successful in 15s
CI / Fuzz Tests (pull_request) Successful in 47s
CI / Mutation Tests (pull_request) Failing after 40s
There isn't a `--threshold` flag for `go-gremlins`.
2026-03-19 21:23:16 -04:00
afd3472d1d ci: enforce 100% mutation coverage
Some checks failed
CI / Makefile Lint (pull_request) Successful in 20s
CI / Go Lint (pull_request) Successful in 17s
CI / Unit Tests (pull_request) Successful in 14s
CI / Mutation Tests (pull_request) Failing after 13s
CI / Fuzz Tests (pull_request) Successful in 1m13s
This will strongly indicate whether the test cases actually cover.
2026-03-19 21:20:18 -04:00
f636ce8911 chore: go mod tidy
All checks were successful
CI / Go Lint (pull_request) Successful in 49s
CI / Makefile Lint (pull_request) Successful in 38s
CI / Unit Tests (pull_request) Successful in 14s
CI / Fuzz Tests (pull_request) Successful in 1m10s
CI / Mutation Tests (pull_request) Successful in 58s
2026-03-19 21:08:23 -04:00
0c81bc5cae docs: added comments to give context to functions
Some checks failed
CI / Makefile Lint (pull_request) Successful in 21s
CI / Go Lint (pull_request) Failing after 12s
CI / Unit Tests (pull_request) Successful in 14s
CI / Fuzz Tests (pull_request) Successful in 1m14s
CI / Mutation Tests (pull_request) Successful in 53s
2026-03-19 21:06:12 -04:00
bd3f0aad04 chore: removed testdata for fuzz test
Some checks failed
CI / Go Lint (pull_request) Failing after 11s
CI / Makefile Lint (pull_request) Successful in 41s
CI / Unit Tests (pull_request) Successful in 45s
CI / Fuzz Tests (pull_request) Successful in 1m25s
CI / Mutation Tests (pull_request) Successful in 1m17s
2026-03-19 20:54:54 -04:00
cdb5efb4a3 fix: allow 0 capacity for table
- Added guards at the bucket level, to ensure that getting an item in an empty bucket doesn't cause an error.
- Added grow() and shrink() functions to Table, to prevent a capacity of 0 from not being able to grow.
- Updated the fuzz test to use `go_fuzz-utils`.
2026-03-19 20:46:31 -04:00
bb874a2aba test: add Drop to fuzz test, add drop test cases 2026-03-19 20:13:11 -04:00
e2ba398a62 fix: Table.Drop() was not a pointer receiver 2026-03-19 20:05:35 -04:00
c1314f8a3c fix: resize of Table.Drop() now decreases size
- Generalized Table.resize() to accept a capacity size for each bucket.
2026-03-19 20:01:50 -04:00
74ed81761c fix: drop() decrements bucket size 2026-03-19 20:01:14 -04:00
d4acdda95b feat: implement drop functionality
- Added `drop()` function in buckets.
- Implemented `Drop()` function for Table.
2026-03-19 19:54:16 -04:00