fix(gateway): clamp auth limiter prune intervals · openclaw/openclaw@a1d7a75
steipete
·
2026-05-31
·
via Recent Commits to openclaw:main
| Original file line number | Diff line number | Diff line change |
|---|
|
1 | 1 | import { afterEach, describe, expect, it, vi } from "vitest"; |
| 2 | +import { MAX_TIMER_TIMEOUT_MS } from "../shared/number-coercion.js"; |
2 | 3 | import { |
3 | 4 | AUTH_RATE_LIMIT_SCOPE_DEVICE_TOKEN, |
4 | 5 | AUTH_RATE_LIMIT_SCOPE_HOOK_AUTH, |
@@ -238,6 +239,19 @@ describe("auth rate limiter", () => {
|
238 | 239 | } |
239 | 240 | }); |
240 | 241 | |
| 242 | +it("clamps oversized positive auto-prune intervals", () => { |
| 243 | +vi.useFakeTimers(); |
| 244 | +try { |
| 245 | +const setIntervalSpy = vi.spyOn(globalThis, "setInterval"); |
| 246 | + |
| 247 | +limiter = createAuthRateLimiter({ pruneIntervalMs: Number.MAX_SAFE_INTEGER }); |
| 248 | + |
| 249 | +expect(setIntervalSpy).toHaveBeenCalledWith(expect.any(Function), MAX_TIMER_TIMEOUT_MS); |
| 250 | +} finally { |
| 251 | +vi.useRealTimers(); |
| 252 | +} |
| 253 | +}); |
| 254 | + |
241 | 255 | // ---------- undefined / empty IP ---------- |
242 | 256 | |
243 | 257 | it("normalizes undefined IP to 'unknown'", () => { |
|
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。