38 lines
1004 B
TypeScript
38 lines
1004 B
TypeScript
import '@testing-library/jest-dom';
|
|
|
|
class MockDataTransfer implements DataTransfer {
|
|
dropEffect: DataTransfer['dropEffect'] = 'none';
|
|
effectAllowed: DataTransfer['effectAllowed'] = 'all';
|
|
files: FileList = Object.assign([], { item: (i: number) => this.files[i] || null });
|
|
items: DataTransferItemList = Object.assign([], {
|
|
add: () => null,
|
|
remove: () => {},
|
|
clear: () => {},
|
|
item: () => null,
|
|
}) as unknown as DataTransferItemList;
|
|
types: readonly string[] = [];
|
|
|
|
clearData(): void {}
|
|
getData(): string { return ''; }
|
|
setData(): void {}
|
|
setDragImage(): void {}
|
|
}
|
|
|
|
Object.defineProperty(globalThis, 'DataTransfer', {
|
|
value: MockDataTransfer,
|
|
});
|
|
|
|
Object.defineProperty(window, 'matchMedia', {
|
|
writable: true,
|
|
value: (query: string) => ({
|
|
matches: false,
|
|
media: query,
|
|
onchange: null,
|
|
addListener: () => {},
|
|
removeListener: () => {},
|
|
addEventListener: () => {},
|
|
removeEventListener: () => {},
|
|
dispatchEvent: () => false,
|
|
}),
|
|
});
|