/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0 */ import React from "react"; import { render } from "@testing-library/react"; import { MemoryRouter } from "react-router-dom"; import PublishingGuidanceSettings from "../PublishingGuidanceSettings"; jest.mock("../../hooks"); test("renders the title", async () => { const { getByRole } = render(, { wrapper: MemoryRouter, }); expect(getByRole("heading", { name: "Publishing guidance" })).toBeInTheDocument(); }); test("renders the description", async () => { const { getByText } = render(, { wrapper: MemoryRouter, }); expect( getByText( "Publishing guidance is text that users must acknowledge before they " + "publish a dashboard. For example, use this text to remind them to check " + "for errors or mistakes, sensitive or confidential data, or guidance " + "specific to your organization.", ), ).toBeInTheDocument(); }); test("renders the acknowledgement statement header", async () => { const { getByText } = render(, { wrapper: MemoryRouter, }); expect(getByText("Acknowledge statement")).toBeInTheDocument(); }); test("renders the acknowledgement statement", async () => { const { getByText } = render(, { wrapper: MemoryRouter, }); expect( getByText("I acknowledge that I have reviewed the dashboard and it is ready to publish"), ).toBeInTheDocument(); }); test("renders a button to edit", async () => { const { getByRole } = render(, { wrapper: MemoryRouter, }); const button = getByRole("button", { name: "Edit" }); expect(button).toBeInTheDocument(); }); test("publishing guidance settings should match snapshot", async () => { const wrapper = render(, { wrapper: MemoryRouter, }); expect(wrapper.container).toMatchSnapshot(); });