fleet/frontend/pages/ManageControlsPage/SetupExperience/cards/SetupExperienceScript/SetupExperienceScript.tests.tsx
Gabriel Hernandez d953350621
UI tests for setup experience (#22861)
set of tests for some important UI flows of the setup experience install
software and scripts.
2024-10-14 13:01:56 +01:00

34 lines
1.2 KiB
TypeScript

import React from "react";
import { screen } from "@testing-library/react";
import mockServer from "test/mock-server";
import { createCustomRenderer } from "test/test-utils";
import {
defaultSetupExperienceScriptHandler,
errorNoSetupExperienceScript,
} from "test/handlers/setup-experience-handlers";
import SetupExperienceScript from "./SetupExperienceScript";
describe("SetupExperienceScript", () => {
it("should render the script uploader when no script has been uploaded", async () => {
mockServer.use(errorNoSetupExperienceScript);
const render = createCustomRenderer({ withBackendMock: true });
render(<SetupExperienceScript currentTeamId={1} />);
expect(await screen.findByRole("button", { name: "Upload" })).toBeVisible();
});
it("should render the uploaded script uploader when a script has been uploaded", async () => {
mockServer.use(defaultSetupExperienceScriptHandler);
const render = createCustomRenderer({ withBackendMock: true });
render(<SetupExperienceScript currentTeamId={1} />);
expect(
await screen.findByText("Script will run during setup:")
).toBeVisible();
expect(await screen.findByText("Test Script.sh")).toBeVisible();
});
});