Clean up abandoned matches and fix analytics validation

This commit is contained in:
2026-10-19 15:23:16 +09:00
parent 65c3941e29
commit 6f44ec0d15
14 changed files with 232 additions and 10 deletions
+4
View File
@@ -162,12 +162,16 @@ function viewHarness(t: import('node:test').TestContext) {
const actors = [new Element(), new Element()];
const container = new Element();
const previous = Object.getOwnPropertyDescriptor(globalThis, 'window');
const previousDocument = Object.getOwnPropertyDescriptor(globalThis, 'document');
Object.defineProperty(globalThis, 'document', { configurable: true, value: { addEventListener() {}, removeEventListener() {} } });
Object.defineProperty(globalThis, 'window', { configurable: true, value: {
matchMedia: () => ({ matches: false, addEventListener() {}, removeEventListener() {} }),
} });
const view = createMatchView(container as unknown as HTMLElement, async () => true, () => {}, () => {});
t.after(() => {
view.destroy();
if (previousDocument) Object.defineProperty(globalThis, 'document', previousDocument);
else Reflect.deleteProperty(globalThis, 'document');
if (previous) Object.defineProperty(globalThis, 'window', previous);
else Reflect.deleteProperty(globalThis, 'window');
});