diff --git a/web/workspace/src/routes/w/[workspaceId]/settings/repository-access/+page.svelte b/web/workspace/src/routes/w/[workspaceId]/settings/repository-access/+page.svelte index cf20ee0f0..56a35c826 100644 --- a/web/workspace/src/routes/w/[workspaceId]/settings/repository-access/+page.svelte +++ b/web/workspace/src/routes/w/[workspaceId]/settings/repository-access/+page.svelte @@ -730,9 +730,9 @@ {isPending(`copy-${credential.credential_id}`) ? 'Loading…' : copiedCredentialId === credential.credential_id ? 'Copied' : 'Copy public key'} {#if credential.credential_id !== workspaceDefaultCredentialId} - + {#if credential.referenced_repositories.length === 0} - + {/if} {/if} diff --git a/web/workspace/src/routes/w/[workspaceId]/settings/repository-access/repository-access.browser.spec.ts b/web/workspace/src/routes/w/[workspaceId]/settings/repository-access/repository-access.browser.spec.ts index 0b3e98332..68b204f30 100644 --- a/web/workspace/src/routes/w/[workspaceId]/settings/repository-access/repository-access.browser.spec.ts +++ b/web/workspace/src/routes/w/[workspaceId]/settings/repository-access/repository-access.browser.spec.ts @@ -240,6 +240,14 @@ test("keeps a deferred row failure on that row while unrelated actions remain en name: "Add pinned key", }) as HTMLButtonElement).disabled, ).toBe(false); + const rotate = within(row).getByRole("button", { name: "Rotate" }); + const remove = within(row).getByRole("button", { name: "Delete" }); + expect((rotate as HTMLButtonElement).disabled).toBe(true); + expect((remove as HTMLButtonElement).disabled).toBe(true); + await fireEvent.click(rotate); + await fireEvent.click(remove); + expect(screen.queryByRole("heading", { name: "Rotate Deploy key" })) + .toBeNull(); await fireEvent.click(within(row).getByRole("button", { name: "Loading…" })); expect(fetchMock).toHaveBeenCalledTimes(1);