diff --git a/web/src/components/deployments-detail-page/deployment-detail/index.test.tsx b/web/src/components/deployments-detail-page/deployment-detail/index.test.tsx index a728a603b1..a2000dde80 100644 --- a/web/src/components/deployments-detail-page/deployment-detail/index.test.tsx +++ b/web/src/components/deployments-detail-page/deployment-detail/index.test.tsx @@ -1,8 +1,9 @@ import userEvent from "@testing-library/user-event"; import { dummyDeployment } from "~/__fixtures__/dummy-deployment"; +import { dummyTrigger } from "~/__fixtures__/dummy-trigger"; import { render, screen, MemoryRouter, waitFor, act } from "~~/test-utils"; import { DeploymentDetail } from "."; -import { DeploymentStatus } from "~~/model/deployment_pb"; +import { Deployment, DeploymentStatus } from "~~/model/deployment_pb"; import * as deploymentsApi from "~/api/deployments"; import { server } from "~/mocks/server"; @@ -38,6 +39,32 @@ describe("DeploymentDetail", () => { expect(screen.getByText(dummyDeployment.summary)).toBeInTheDocument(); }); + it("renders gracefully when commit hash is undefined", async () => { + const deploymentWithoutHash: Deployment.AsObject = { + ...dummyDeployment, + trigger: { + ...dummyTrigger, + commit: { + ...dummyTrigger.commit!, + hash: (undefined as unknown) as string, + }, + }, + }; + + render( + + + + ); + + await waitFor(() => { + expect(screen.getByText("SUCCESS")).toBeInTheDocument(); + }); + }); + describe("status: RUNNING", () => { beforeEach(() => { render( diff --git a/web/src/components/deployments-detail-page/deployment-detail/index.tsx b/web/src/components/deployments-detail-page/deployment-detail/index.tsx index bc18f8208f..1ffb46f08d 100644 --- a/web/src/components/deployments-detail-page/deployment-detail/index.tsx +++ b/web/src/components/deployments-detail-page/deployment-detail/index.tsx @@ -275,10 +275,9 @@ export const DeploymentDetail: FC = memo( target="_blank" rel="noreferrer" > - {`${deployment.trigger.commit.hash.slice( - 0, - 7 - )}`} + {`${( + deployment.trigger.commit.hash ?? "" + ).slice(0, 7)}`}