.PHONY: test-fuzz
test-fuzz: ## Run fuzz tests
ifeq ($(strip $(GO_FUZZARGS)),)
@status=0; \
for pkg in $$(go list ./...); do \
for test in $$(go test -list=^Fuzz $$pkg | grep '^Fuzz'); do \
echo ">>> Fuzzing $$pkg $$test"; \
if ! go test -fuzz=$$test -fuzztime=10s $$pkg; then \
echo "❌ FAIL: $$pkg $$test"; \
status=1; \
fi; \
done; \
done; \
exit $$status
else
@# Running tests with fuzz arguments
go test -v -run='^$$' $(GO_FUZZARGS)
endif