Files
kandev/apps/web/components/threads/threads-view-editor-actions.test.tsx
T
João Salavisa 5ee5161166 feat(ui): confirm saved view deletion (#3461)
Co-authored-by: Kandev Agent <agent@kandev.dev>
2026-09-07 16:14:58 +01:00

45 lines
1.2 KiB
TypeScript

import { cleanup, fireEvent, render, screen } from "@testing-library/react";
import { afterEach, describe, expect, it, vi } from "vitest";
import { EditorActions } from "./threads-view-editor-actions";
describe("EditorActions", () => {
afterEach(cleanup);
it("anchors delete requests and lets inline confirmation replace the action row", () => {
const onDelete = vi.fn();
const { rerender } = render(
<EditorActions
hasDraft={false}
canDelete
viewCount={2}
invalidDraft={false}
onSave={vi.fn()}
onSaveAs={vi.fn()}
onDiscard={vi.fn()}
onDelete={onDelete}
/>,
);
fireEvent.click(screen.getByTestId("threads-view-delete"));
expect(onDelete).toHaveBeenCalledOnce();
rerender(
<EditorActions
hasDraft={false}
canDelete
viewCount={2}
invalidDraft={false}
deleteConfirmation={<div data-testid="inline-delete-confirmation" />}
onSave={vi.fn()}
onSaveAs={vi.fn()}
onDiscard={vi.fn()}
onDelete={onDelete}
/>,
);
expect(screen.getByTestId("inline-delete-confirmation")).toBeTruthy();
expect(screen.queryByTestId("threads-view-delete")).toBeNull();
});
});