| 123456789101112131415161718192021222324252627282930313233343536 |
- import { expect, test } from "bun:test"
- import { createRoot, createSignal } from "solid-js"
- import { createPromptInputTransientState } from "@/components/prompt-input/transient-state"
- test("resets transient prompt input state when the prompt session changes", () => {
- createRoot((dispose) => {
- const [identity, setIdentity] = createSignal("A")
- const [state, setState] = createPromptInputTransientState(identity, 3)
- setState({
- popover: "slash",
- historyIndex: 2,
- savedPrompt: {
- prompt: [{ type: "text", content: "draft-A", start: 0, end: 7 }],
- comments: [],
- },
- draggingType: "image",
- mode: "shell",
- applyingHistory: true,
- variantOpen: true,
- })
- setIdentity("B")
- expect(state).toMatchObject({
- popover: null,
- historyIndex: -1,
- savedPrompt: null,
- placeholder: 3,
- draggingType: null,
- mode: "normal",
- applyingHistory: false,
- variantOpen: false,
- })
- dispose()
- })
- })
|