feat: add drop key functionality (#6)
Currently, the `Table.Drop()` function is deprecated because it is not implemented yet. Let's add that functionality. - Adds true drop functionality to the table, through `Table.Drop()`. - Adds tests for functionality. - Rewrites fuzz test using `go_fuzz_utils`, to test arbitrary usage patterns. - Rewrite `bucket` to allow a capacity of zero. - Rename `Table.Capacity()` to `Table.TotalCapacity()`, to reflect to different between the capacity of the buckets vs. the whole table. - Enforce 100% mutation test coverage. Reviewed-on: #6 Co-authored-by: M.V. Hutz <git@maximhutz.me> Co-committed-by: M.V. Hutz <git@maximhutz.me>
This commit was merged in pull request #6.
This commit is contained in:
4
Makefile
4
Makefile
@@ -16,10 +16,12 @@ test-unit: ## Run unit tests with coverage
|
||||
test-mutation: ## Run mutation tests with gremlins
|
||||
gremlins unleash
|
||||
|
||||
FUZZ_TIME ?= 30
|
||||
|
||||
test-fuzz: ## Run all fuzz tests for 30s each
|
||||
@for func in $$(grep -r --include='*_test.go' -oh 'func Fuzz\w*' . | sed 's/func //'); do \
|
||||
echo "Fuzzing $$func..."; \
|
||||
go test ./... -fuzz="^$$func$$" -fuzztime=30s; \
|
||||
go test ./... -fuzz="^$$func$$" -fuzztime=$(FUZZ_TIME)s; \
|
||||
done
|
||||
|
||||
test: test-unit test-mutation test-fuzz ## Run all tests
|
||||
|
||||
Reference in New Issue
Block a user