Skip to content

Commit c6c2803

Browse files
authored
Fix intermitently failing dropdown test (#1285)
Related to RaspberryPiFoundation/digital-editor-issues#878 Use act so the react component is updated before the selector is run
1 parent c9cb5a8 commit c6c2803

2 files changed

Lines changed: 10 additions & 4 deletions

File tree

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,10 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66

77
## [Unreleased]
88

9+
### Fixed
10+
11+
- Fix intermitently failing dropdown test (#1285)
12+
913
## [0.34.2] - 2025-12-09
1014

1115
### Added

src/components/Menus/Dropdown/Dropdown.test.js

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { fireEvent, render } from "@testing-library/react";
1+
import { fireEvent, render, act } from "@testing-library/react";
22
import userEvent from "@testing-library/user-event";
33

44
import Dropdown from "./Dropdown";
@@ -46,9 +46,11 @@ test("Clicking button makes menu content appear", () => {
4646
expect(queryByRole("heading", { level: 1, name: "Menu" })).not.toBeNull();
4747
});
4848

49-
test("Clicking outside menu makes it close", () => {
49+
test("Clicking outside menu makes it close", async () => {
5050
const button = getByText("my button").parentElement;
51-
fireEvent.click(button);
52-
userEvent.click(document.body);
51+
await act(() => {
52+
fireEvent.click(button);
53+
userEvent.click(document.body);
54+
});
5355
expect(queryByRole("heading", { level: 1, name: "Menu" })).toBeNull();
5456
});

0 commit comments

Comments
 (0)