Skip to content

Commit 5d85e7f

Browse files
committed
fix: use userEvent wherever possible
1 parent 2b635b1 commit 5d85e7f

5 files changed

Lines changed: 37 additions & 7 deletions

File tree

package-lock.json

Lines changed: 26 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@
5252
"@babel/preset-env": "^7.13.15",
5353
"@babel/preset-typescript": "7.13.0",
5454
"@testing-library/jest-dom": "^5.11.9",
55+
"@testing-library/user-event": "^13.5.0",
5556
"@types/jest": "^26.0.20",
5657
"babel-jest": "^27.0.0",
5758
"babel-preset-solid": "^1.0.0",

src/__tests__/basic.tsx

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import "@testing-library/jest-dom/extend-expect";
22
import { createSignal, createEffect } from "solid-js";
3-
import { fireEvent, render, screen } from "..";
3+
import { render, screen } from "..";
4+
import userEvent from "@testing-library/user-event";
45

56
declare global {
67
var _$HYDRATION: Record<string, any>;
@@ -29,7 +30,7 @@ test("findByTestId returns the element", async () => {
2930
expect(await screen.findByTestId("foo")).toBe(ref);
3031
});
3132

32-
test("fireEvent triggers createEffect calls", () => {
33+
test("userEvent triggers createEffect calls", () => {
3334
const cb = jest.fn();
3435

3536
function Counter() {
@@ -45,7 +46,7 @@ test("fireEvent triggers createEffect calls", () => {
4546
} = render(() => <Counter />);
4647

4748
cb.mockClear();
48-
fireEvent.click(buttonNode!);
49+
userEvent.click(buttonNode! as Element);
4950
expect(buttonNode).toHaveTextContent("1");
5051
expect(cb).toHaveBeenCalledTimes(1);
5152
});

src/__tests__/events.tsx

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import { Dynamic } from "solid-js/web";
2-
import { fireEvent, render } from "..";
2+
import { render, fireEvent } from "..";
3+
import userEvent from "@testing-library/user-event";
34

45
const eventTypes = [
56
{
@@ -160,7 +161,7 @@ test("onInput works", () => {
160161
container: { firstChild: input }
161162
} = render(() => <input type="text" onInput={handler} />);
162163

163-
fireEvent.input(input!, { target: { value: "a" } });
164+
userEvent.type(input! as Element, "a");
164165

165166
expect(handler).toHaveBeenCalledTimes(1);
166167
});

src/__tests__/stopwatch.tsx

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
1+
import userEvent from "@testing-library/user-event";
12
import { createSignal, onCleanup } from "solid-js";
2-
import { fireEvent, screen, render } from "..";
3+
import { screen, render } from "..";
34

45
function StopWatch() {
56
const [lapse, setLapse] = createSignal(0);
@@ -40,7 +41,7 @@ test("unmounts a component", async () => {
4041

4142
const { unmount, container } = render(() => <StopWatch />);
4243

43-
fireEvent.click(screen.getByText("Start") as Element);
44+
userEvent.click(screen.getByText("Start") as Element);
4445

4546
unmount();
4647

0 commit comments

Comments
 (0)