


























@@ -145,31 +145,31 @@ describe("SeenTracker fuzz", () => {
145145describe("malformed IDs", () => {
146146it("handles empty string IDs", () => {
147147const tracker = createTracker();
148-expect(() => tracker.add("")).not.toThrow();
148+expect(tracker.add("")).toBeUndefined();
149149expect(tracker.peek("")).toBe(true);
150150tracker.stop();
151151});
152152153153it("handles very long IDs", () => {
154154const tracker = createTracker();
155155const longId = "a".repeat(100000);
156-expect(() => tracker.add(longId)).not.toThrow();
156+expect(tracker.add(longId)).toBeUndefined();
157157expect(tracker.peek(longId)).toBe(true);
158158tracker.stop();
159159});
160160161161it("handles unicode IDs", () => {
162162const tracker = createTracker();
163163const unicodeId = "事件ID_🎉_тест";
164-expect(() => tracker.add(unicodeId)).not.toThrow();
164+expect(tracker.add(unicodeId)).toBeUndefined();
165165expect(tracker.peek(unicodeId)).toBe(true);
166166tracker.stop();
167167});
168168169169it("handles IDs with null bytes", () => {
170170const tracker = createTracker();
171171const idWithNull = "event\x00id";
172-expect(() => tracker.add(idWithNull)).not.toThrow();
172+expect(tracker.add(idWithNull)).toBeUndefined();
173173expect(tracker.peek(idWithNull)).toBe(true);
174174tracker.stop();
175175});
@@ -178,10 +178,10 @@ describe("SeenTracker fuzz", () => {
178178const tracker = createTracker();
179179180180// These should not affect the tracker's internal operation
181-expect(() => tracker.add("__proto__")).not.toThrow();
182-expect(() => tracker.add("constructor")).not.toThrow();
183-expect(() => tracker.add("toString")).not.toThrow();
184-expect(() => tracker.add("hasOwnProperty")).not.toThrow();
181+expect(tracker.add("__proto__")).toBeUndefined();
182+expect(tracker.add("constructor")).toBeUndefined();
183+expect(tracker.add("toString")).toBeUndefined();
184+expect(tracker.add("hasOwnProperty")).toBeUndefined();
185185186186expect(tracker.peek("__proto__")).toBe(true);
187187expect(tracker.peek("constructor")).toBe(true);
@@ -231,7 +231,7 @@ describe("SeenTracker fuzz", () => {
231231describe("seed edge cases", () => {
232232it("handles empty seed array", () => {
233233const tracker = createTracker();
234-expect(() => tracker.seed([])).not.toThrow();
234+expect(tracker.seed([])).toBeUndefined();
235235expect(tracker.size()).toBe(0);
236236tracker.stop();
237237});
@@ -263,33 +263,29 @@ describe("Metrics fuzz", () => {
263263const metrics = createPlainMetrics();
264264265265// Cast to bypass type checking - testing runtime behavior
266-expect(() => {
267-metrics.emit("invalid.metric.name" as MetricName);
268-}).not.toThrow();
266+expect(metrics.emit("invalid.metric.name" as MetricName)).toBeUndefined();
269267});
270268});
271269272270describe("invalid label values", () => {
273271it("handles null relay label", () => {
274272const metrics = createPlainMetrics();
275-expect(() => {
276-metrics.emit("relay.connect", 1, { relay: null as unknown as string });
277-}).not.toThrow();
273+expect(
274+metrics.emit("relay.connect", 1, { relay: null as unknown as string }),
275+).toBeUndefined();
278276});
279277280278it("handles undefined relay label", () => {
281279const metrics = createPlainMetrics();
282-expect(() => {
283-metrics.emit("relay.connect", 1, { relay: undefined as unknown as string });
284-}).not.toThrow();
280+expect(
281+metrics.emit("relay.connect", 1, { relay: undefined as unknown as string }),
282+).toBeUndefined();
285283});
286284287285it("handles very long relay URL", () => {
288286const metrics = createPlainMetrics();
289287const longUrl = "wss://" + "a".repeat(10000) + ".com";
290-expect(() => {
291-metrics.emit("relay.connect", 1, { relay: longUrl });
292-}).not.toThrow();
288+expect(metrics.emit("relay.connect", 1, { relay: longUrl })).toBeUndefined();
293289294290const snapshot = metrics.getSnapshot();
295291expect(snapshot.relays[longUrl]).toEqual(expect.objectContaining({ connects: 1 }));
@@ -299,15 +295,15 @@ describe("Metrics fuzz", () => {
299295describe("extreme values", () => {
300296it("handles NaN value", () => {
301297const metrics = createPlainMetrics();
302-expect(() => metrics.emit("event.received", Number.NaN)).not.toThrow();
298+expect(metrics.emit("event.received", Number.NaN)).toBeUndefined();
303299304300const snapshot = metrics.getSnapshot();
305301expect(Number.isNaN(snapshot.eventsReceived)).toBe(true);
306302});
307303308304it("handles Infinity value", () => {
309305const metrics = createPlainMetrics();
310-expect(() => metrics.emit("event.received", Infinity)).not.toThrow();
306+expect(metrics.emit("event.received", Infinity)).toBeUndefined();
311307312308const snapshot = metrics.getSnapshot();
313309expect(snapshot.eventsReceived).toBe(Infinity);
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。