mirror of
https://github.com/tiennm99/goclaw.git
synced 2026-10-15 20:15:48 +00:00
test: speed up retry/cron/facebook tests, drop coverage ratchet gate
Slow tests were dominating CI feedback time and AI dev loop because they waited through real exponential backoffs and 1s ticker intervals. Test-only override pattern keeps production behavior 100% identical. Speed wins (no-race wall-clock per package): - internal/vault 16.3s -> 0.6s (-15.7s) - internal/cron 11.7s -> 1.5s (-10.2s) - internal/channels/facebook 6.3s -> 3.0s (-3.3s) - Full -race ./... suite 90s+ -> 51s Changes: - vault: new fastBackoffsForTest(t) helper overrides enrichRetryBackoffs + enrichRetryTimeouts to 1ms in 3 retry tests; drop 2 duplicate tests (FirstAttemptSuccess, MaxRetriesConstant) - cron: extract runLoopTickInterval as package var (default 1s); test-only setFastTick(t) helper shortens to 20ms so 6 scheduler tests no longer sleep 1.5s each waiting for a tick - facebook: extract graphBackoffBase as package var (default 1s); newFakeGraph helper shortens to 1ms so HTTP retry tests don't burn 6s of real waits Coverage ratchet removed: - Delete scripts/check_coverage.go + scripts/coverage_thresholds.json - Remove "Coverage ratchet gate" CI step - Keep coverage profile + go tool cover summary as informational only - Philosophy: signal over coverage %. Forced tests to bump % were the root cause of the slowness this commit unwinds. Production behavior unchanged. Coverage profile shows isolated package coverage matches prior thresholds (vault 27.4%, cron 73.7%, facebook 81.9%).
This commit is contained in:
1 parent
d77a3664db
commit
0c44149fad
12 files changed
+102
-391
No files matched your search
@@ -27,8 +27,6 @@ jobs:
|
||||
- run: go test -race -timeout=90s -coverpkg=./... -coverprofile=coverage.out ./...
|
||||
- name: Coverage summary
|
||||
run: go tool cover -func=coverage.out | tail -1
|
||||
- name: Coverage ratchet gate
|
||||
run: go run scripts/check_coverage.go -coverprofile=coverage.out
|
||||
|
||||
web:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
Reference in new issue
Block a user