Files
kandev/apps/web/components/task/chat/use-entity-reference-composer.test.ts
T
José Almeida 7de788ceed feat: add cross-integration entity references (#1862)
* feat: add cross-integration entity references

* fix(web): anchor entity reference menu to composer

* fix: keep Kandev tasks under @ mentions

* fix: address entity reference review findings

* test(e2e): use option role for prompt menu

* test(e2e): update passthrough mention roles

* fix: preserve queued references and paginate Azure PRs
2026-07-23 09:03:56 +01:00

43 lines
1.1 KiB
TypeScript

import { cleanup, renderHook } from "@testing-library/react";
import { afterEach, describe, expect, it, vi } from "vitest";
vi.mock("@/hooks/use-entity-reference-search", () => ({
useEntityReferenceSearch: () => ({
groups: [],
isSearching: false,
error: null,
retry: vi.fn(),
}),
}));
import { useEntityReferenceComposer } from "./use-entity-reference-composer";
afterEach(cleanup);
describe("useEntityReferenceComposer lifecycle", () => {
it("installs the # suggestion on an enabled surface before workspace hydration", () => {
const { result } = renderHook(() =>
useEntityReferenceComposer({
enabled: true,
workspaceId: null,
sessionId: "session-1",
}),
);
expect(result.current.suggestion).toBeDefined();
expect(result.current.isOpen).toBe(false);
});
it("does not install the # suggestion on an out-of-scope surface", () => {
const { result } = renderHook(() =>
useEntityReferenceComposer({
enabled: false,
workspaceId: "workspace-1",
sessionId: "session-1",
}),
);
expect(result.current.suggestion).toBeUndefined();
});
});