f0e3e5b4a6
* use `act` from `react` instead of `@testing-library/react` * bump dependencies * bump `@testing-library/react` * bump `@react-aria/interactions` * bump "@tanstack/react-virtual" * add `ResizeObserver` polyfill, and enable it by default for tests * mock `getBoundingClientRect` Otherwise the virtualization tests don't work as expected because they rely on the client rect which is not supported (or not correctly measured) in JSDOM.
22 lines
787 B
TypeScript
22 lines
787 B
TypeScript
import ResizeObserverPolyfill from 'resize-observer-polyfill'
|
|
|
|
if (typeof ResizeObserver === 'undefined') {
|
|
global.ResizeObserver = ResizeObserverPolyfill
|
|
}
|
|
|
|
// JSDOM Doesn't implement innerText yet: https://github.com/jsdom/jsdom/issues/1245
|
|
// So this is a hacky way of implementing it using `textContent`.
|
|
// Real implementation doesn't use textContent because:
|
|
// > textContent gets the content of all elements, including <script> and <style> elements. In
|
|
// > contrast, innerText only shows "human-readable" elements.
|
|
// >
|
|
// > — https://developer.mozilla.org/en-US/docs/Web/API/Node/textContent#differences_from_innertext
|
|
Object.defineProperty(HTMLElement.prototype, 'innerText', {
|
|
get() {
|
|
return this.textContent
|
|
},
|
|
set(value) {
|
|
this.textContent = value
|
|
},
|
|
})
|