From 4b1e8babad297162673af791e5e1e3f6b28838ae Mon Sep 17 00:00:00 2001 From: Matt Carroll Date: Thu, 25 Jan 2024 21:17:07 -0800 Subject: [PATCH 1/3] Migrate SyntheticWheelEvent-test.js from ReactDOM.render to createRoot --- .../__tests__/SyntheticWheelEvent-test.js | 27 +++++++++++++------ 1 file changed, 19 insertions(+), 8 deletions(-) diff --git a/packages/react-dom/src/events/__tests__/SyntheticWheelEvent-test.js b/packages/react-dom/src/events/__tests__/SyntheticWheelEvent-test.js index 19729bcb4bfc5..c79209254a8da 100644 --- a/packages/react-dom/src/events/__tests__/SyntheticWheelEvent-test.js +++ b/packages/react-dom/src/events/__tests__/SyntheticWheelEvent-test.js @@ -10,18 +10,22 @@ 'use strict'; let React; -let ReactDOM; +let ReactDOMClient; +let act; describe('SyntheticWheelEvent', () => { let container; + let root; beforeEach(() => { React = require('react'); - ReactDOM = require('react-dom'); + ReactDOMClient = require('react-dom/client'); + act = require('internal-test-utils').act; // The container has to be attached for events to fire. container = document.createElement('div'); document.body.appendChild(container); + root = ReactDOMClient.createRoot(container); }); afterEach(() => { @@ -29,13 +33,15 @@ describe('SyntheticWheelEvent', () => { container = null; }); - it('should normalize properties from the MouseEvent interface', () => { + it('should normalize properties from the MouseEvent interface', async () => { const events = []; const onWheel = event => { event.persist(); events.push(event); }; - ReactDOM.render(
, container); + await act(async () => { + root.render(
); + }); container.firstChild.dispatchEvent( new MouseEvent('wheel', { @@ -48,13 +54,16 @@ describe('SyntheticWheelEvent', () => { expect(events[0].button).toBe(1); }); - it('should normalize properties from the WheelEvent interface', () => { + it('should normalize properties from the WheelEvent interface', async () => { const events = []; const onWheel = event => { event.persist(); events.push(event); }; - ReactDOM.render(
, container); + + await act(async () => { + root.render(
); + }); let event = new MouseEvent('wheel', { bubbles: true, @@ -83,7 +92,7 @@ describe('SyntheticWheelEvent', () => { expect(events[1].deltaY).toBe(-50); }); - it('should be able to `preventDefault` and `stopPropagation`', () => { + it('should be able to `preventDefault` and `stopPropagation`', async () => { const events = []; const onWheel = event => { expect(event.isDefaultPrevented()).toBe(false); @@ -92,7 +101,9 @@ describe('SyntheticWheelEvent', () => { event.persist(); events.push(event); }; - ReactDOM.render(
, container); + await act(async () => { + root.render(
); + }); container.firstChild.dispatchEvent( new MouseEvent('wheel', { From 7c1b0830555388a76a53e65818c133f0dd84acee Mon Sep 17 00:00:00 2001 From: Matt Carroll Date: Thu, 25 Jan 2024 23:50:52 -0800 Subject: [PATCH 2/3] Add expected number of assertions --- .../react-dom/src/events/__tests__/SyntheticWheelEvent-test.js | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/react-dom/src/events/__tests__/SyntheticWheelEvent-test.js b/packages/react-dom/src/events/__tests__/SyntheticWheelEvent-test.js index c79209254a8da..006192bf2a428 100644 --- a/packages/react-dom/src/events/__tests__/SyntheticWheelEvent-test.js +++ b/packages/react-dom/src/events/__tests__/SyntheticWheelEvent-test.js @@ -122,5 +122,6 @@ describe('SyntheticWheelEvent', () => { ); expect(events.length).toBe(2); + expect.assertions(5) }); }); From 5970396f79a114a8815c5d7ba057d21a6f7f0d0d Mon Sep 17 00:00:00 2001 From: Matt Carroll Date: Fri, 26 Jan 2024 00:00:34 -0800 Subject: [PATCH 3/3] Fix lint issue --- .../react-dom/src/events/__tests__/SyntheticWheelEvent-test.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/react-dom/src/events/__tests__/SyntheticWheelEvent-test.js b/packages/react-dom/src/events/__tests__/SyntheticWheelEvent-test.js index 006192bf2a428..b40aac48ed73d 100644 --- a/packages/react-dom/src/events/__tests__/SyntheticWheelEvent-test.js +++ b/packages/react-dom/src/events/__tests__/SyntheticWheelEvent-test.js @@ -122,6 +122,6 @@ describe('SyntheticWheelEvent', () => { ); expect(events.length).toBe(2); - expect.assertions(5) + expect.assertions(5); }); });