diff --git a/packages/react-dom/src/__tests__/ReactBrowserEventEmitter-test.js b/packages/react-dom/src/__tests__/ReactBrowserEventEmitter-test.js
index c4a1d4e4d9f4e..1dd665ce01145 100644
--- a/packages/react-dom/src/__tests__/ReactBrowserEventEmitter-test.js
+++ b/packages/react-dom/src/__tests__/ReactBrowserEventEmitter-test.js
@@ -35,6 +35,7 @@ let PARENT;
let CHILD;
let BUTTON;
+let renderTree;
let putListener;
let deleteAllListeners;
@@ -71,7 +72,7 @@ describe('ReactBrowserEventEmitter', () => {
const root = ReactDOMClient.createRoot(container);
- async function renderTree() {
+ renderTree = async function () {
await act(() => {
root.render(
(GRANDPARENT = c)} {...GRANDPARENT_PROPS}>
@@ -86,7 +87,7 @@ describe('ReactBrowserEventEmitter', () => {
,
);
});
- }
+ };
putListener = async function (node, eventName, listener) {
switch (node) {
@@ -126,8 +127,6 @@ describe('ReactBrowserEventEmitter', () => {
};
idCallOrder = [];
-
- return renderTree();
});
afterEach(() => {
@@ -136,6 +135,7 @@ describe('ReactBrowserEventEmitter', () => {
});
it('should bubble simply', async () => {
+ await renderTree();
await putListener(CHILD, ON_CLICK_KEY, recordID.bind(null, CHILD));
await putListener(PARENT, ON_CLICK_KEY, recordID.bind(null, PARENT));
await putListener(
@@ -153,6 +153,7 @@ describe('ReactBrowserEventEmitter', () => {
});
it('should bubble to the right handler after an update', async () => {
+ await renderTree();
await putListener(
GRANDPARENT,
ON_CLICK_KEY,
@@ -181,6 +182,7 @@ describe('ReactBrowserEventEmitter', () => {
});
it('should continue bubbling if an error is thrown', async () => {
+ await renderTree();
await putListener(CHILD, ON_CLICK_KEY, recordID.bind(null, CHILD));
await putListener(PARENT, ON_CLICK_KEY, function () {
recordID(PARENT);
@@ -203,6 +205,7 @@ describe('ReactBrowserEventEmitter', () => {
});
it('should set currentTarget', async () => {
+ await renderTree();
await putListener(CHILD, ON_CLICK_KEY, function (event) {
recordID(CHILD);
expect(event.currentTarget).toBe(CHILD);
@@ -225,6 +228,7 @@ describe('ReactBrowserEventEmitter', () => {
});
it('should support stopPropagation()', async () => {
+ await renderTree();
await putListener(CHILD, ON_CLICK_KEY, recordID.bind(null, CHILD));
await putListener(
PARENT,
@@ -245,6 +249,7 @@ describe('ReactBrowserEventEmitter', () => {
});
it('should support overriding .isPropagationStopped()', async () => {
+ await renderTree();
// Ew. See D4504876.
await putListener(CHILD, ON_CLICK_KEY, recordID.bind(null, CHILD));
await putListener(PARENT, ON_CLICK_KEY, function (e) {
@@ -266,6 +271,7 @@ describe('ReactBrowserEventEmitter', () => {
});
it('should stop after first dispatch if stopPropagation', async () => {
+ await renderTree();
await putListener(
CHILD,
ON_CLICK_KEY,
@@ -285,6 +291,7 @@ describe('ReactBrowserEventEmitter', () => {
});
it('should not stopPropagation if false is returned', async () => {
+ await renderTree();
await putListener(
CHILD,
ON_CLICK_KEY,
@@ -315,6 +322,7 @@ describe('ReactBrowserEventEmitter', () => {
*/
it('should invoke handlers that were removed while bubbling', async () => {
+ await renderTree();
const handleParentClick = jest.fn();
const handleChildClick = async function (event) {
await deleteAllListeners(PARENT);
@@ -328,6 +336,7 @@ describe('ReactBrowserEventEmitter', () => {
});
it('should not invoke newly inserted handlers while bubbling', async () => {
+ await renderTree();
const handleParentClick = jest.fn();
const handleChildClick = async function (event) {
await putListener(PARENT, ON_CLICK_KEY, handleParentClick);
@@ -340,6 +349,7 @@ describe('ReactBrowserEventEmitter', () => {
});
it('should have mouse enter simulated by test utils', async () => {
+ await renderTree();
await putListener(CHILD, ON_MOUSE_ENTER_KEY, recordID.bind(null, CHILD));
await act(() => {
ReactTestUtils.Simulate.mouseEnter(CHILD);