From 12fbdd4ede60ba6ffa5b997c2c403ee27bb4557c Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Fri, 1 May 2026 12:26:33 +0100 Subject: [PATCH] refactor: delete unused contract test helpers --- .../test-helpers/lazy-object-surface.ts | 18 --- .../runtime/typing-lease.test-support.ts | 121 ------------------ 2 files changed, 139 deletions(-) delete mode 100644 src/channels/plugins/contracts/test-helpers/lazy-object-surface.ts delete mode 100644 src/plugins/runtime/typing-lease.test-support.ts diff --git a/src/channels/plugins/contracts/test-helpers/lazy-object-surface.ts b/src/channels/plugins/contracts/test-helpers/lazy-object-surface.ts deleted file mode 100644 index b5b27147386..00000000000 --- a/src/channels/plugins/contracts/test-helpers/lazy-object-surface.ts +++ /dev/null @@ -1,18 +0,0 @@ -export function createLazyObjectSurface(loadSurface: () => T): T { - return new Proxy({} as T, { - get(_target, property) { - const surface = loadSurface(); - const value = Reflect.get(surface, property, surface); - return typeof value === "function" ? value.bind(surface) : value; - }, - has(_target, property) { - return property in loadSurface(); - }, - ownKeys() { - return Reflect.ownKeys(loadSurface()); - }, - getOwnPropertyDescriptor(_target, property) { - return Reflect.getOwnPropertyDescriptor(loadSurface(), property); - }, - }); -} diff --git a/src/plugins/runtime/typing-lease.test-support.ts b/src/plugins/runtime/typing-lease.test-support.ts deleted file mode 100644 index f137d2d8f99..00000000000 --- a/src/plugins/runtime/typing-lease.test-support.ts +++ /dev/null @@ -1,121 +0,0 @@ -import { expect, it, vi } from "vitest"; -import type { MockFn } from "../../test-utils/vitest-mock-fn.js"; - -type MockedPulse = { mock: { calls: unknown[] } }; - -function asMockedPulse(pulse: unknown): MockedPulse { - return pulse as MockedPulse; -} - -export function expectTypingPulseCount(pulse: MockedPulse, expected: number) { - expect(pulse.mock.calls).toHaveLength(expected); -} - -export function createPulseWithBackgroundFailure< - TPulse extends (...args: never[]) => Promise, ->() { - let callCount = 0; - const pulse: MockFn = vi.fn(async () => { - callCount += 1; - if (callCount === 2) { - throw new Error("boom"); - } - return undefined; - }) as MockFn; - return pulse; -} - -export async function expectIndependentTypingLeases< - TParams extends { intervalMs?: number; pulse: (...args: never[]) => Promise }, - TLease extends { refresh: () => Promise; stop: () => void }, ->(params: { - createLease: (params: TParams) => Promise; - buildParams: (pulse: TParams["pulse"]) => TParams; -}) { - vi.useFakeTimers(); - const pulse: MockFn = vi.fn(async () => undefined) as MockFn; - const mockedPulse = asMockedPulse(pulse); - - const leaseA = await params.createLease(params.buildParams(pulse)); - const leaseB = await params.createLease(params.buildParams(pulse)); - - expectTypingPulseCount(mockedPulse, 2); - - await vi.advanceTimersByTimeAsync(2_000); - expectTypingPulseCount(mockedPulse, 4); - - leaseA.stop(); - await vi.advanceTimersByTimeAsync(2_000); - expectTypingPulseCount(mockedPulse, 5); - - await leaseB.refresh(); - expectTypingPulseCount(mockedPulse, 6); - - leaseB.stop(); -} - -export async function expectBackgroundTypingPulseFailuresAreSwallowed< - TParams extends { intervalMs?: number; pulse: (...args: never[]) => Promise }, - TLease extends { stop: () => void }, ->(params: { - createLease: (params: TParams) => Promise; - buildParams: (pulse: TParams["pulse"]) => TParams; - pulse: TParams["pulse"]; -}) { - vi.useFakeTimers(); - const mockedPulse = asMockedPulse(params.pulse); - - const lease = await params.createLease(params.buildParams(params.pulse)); - - await expect(vi.advanceTimersByTimeAsync(2_000)).resolves.toBe(vi); - expectTypingPulseCount(mockedPulse, 2); - - lease.stop(); -} - -export function registerSharedTypingLeaseTests< - TParams extends { intervalMs?: number; pulse: (...args: never[]) => Promise }, - TLease extends { refresh: () => Promise; stop: () => void }, ->(params: { - createLease: (params: TParams) => Promise; - buildParams: (pulse: TParams["pulse"]) => TParams; -}) { - it("pulses immediately and keeps leases independent", async () => { - await expectIndependentTypingLeases(params); - }); - - it("swallows background pulse failures", async () => { - const pulse = createPulseWithBackgroundFailure(); - - await expectBackgroundTypingPulseFailuresAreSwallowed({ - createLease: params.createLease, - pulse, - buildParams: params.buildParams, - }); - }); -} - -export async function expectDefaultTypingLeaseInterval< - TParams extends { intervalMs?: number; pulse: (...args: never[]) => Promise }, - TLease extends { stop: () => void }, ->(params: { - createLease: (params: TParams) => Promise; - buildParams: (pulse: TParams["pulse"]) => TParams; - defaultIntervalMs: number; -}) { - vi.useFakeTimers(); - const pulse = vi.fn(async () => undefined); - - const lease = await params.createLease({ - ...params.buildParams(pulse as TParams["pulse"]), - intervalMs: Number.NaN, - }); - - expectTypingPulseCount(asMockedPulse(pulse), 1); - await vi.advanceTimersByTimeAsync(params.defaultIntervalMs - 1); - expectTypingPulseCount(asMockedPulse(pulse), 1); - await vi.advanceTimersByTimeAsync(1); - expectTypingPulseCount(asMockedPulse(pulse), 2); - - lease.stop(); -}