import * as React from "react";
import { render, screen } from "@testing-library/react";
import { createSerializer } from "@emotion/jest";
import { Toast } from "../";
import userEvent from "@testing-library/user-event";
expect.addSnapshotSerializer(createSerializer());
describe("Toast", () => {
it("renders default", () => {
const { asFragment } = render();
expect(asFragment()).toMatchSnapshot();
});
it("renders with description", () => {
const { asFragment } = render(
);
expect(asFragment()).toMatchSnapshot();
});
it("renders with actions", () => {
const { asFragment } = render(
primaryAction}
secondaryAction={}
title="I Am Toast"
key={0}
id={0}
/>
);
expect(asFragment()).toMatchSnapshot();
});
it("calls dismissToast when the dismiss button is clicked", async () => {
const user = userEvent.setup();
const dismissToastSpy = jest.fn();
render(
);
expect(dismissToastSpy).not.toHaveBeenCalled();
const dismissBtn = screen.getByRole("button");
await user.click(dismissBtn);
expect(dismissToastSpy).toHaveBeenCalled();
});
});