-
Notifications
You must be signed in to change notification settings - Fork 17.7k
Expand file tree
/
Copy pathprovider-disconnect.test.ts
More file actions
37 lines (28 loc) · 1.48 KB
/
provider-disconnect.test.ts
File metadata and controls
37 lines (28 loc) · 1.48 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import { expect, test } from "bun:test"
import path from "path"
const root = path.resolve(import.meta.dir, "../../..")
test("registers provider disconnect slash command", async () => {
const app = await Bun.file(path.join(root, "src/cli/cmd/tui/app.tsx")).text()
expect(app).toContain('value: "provider.disconnect"')
expect(app).toContain('name: "disconnect"')
})
test("provider disconnect dialog removes auth and refreshes sync", async () => {
const dialog = await Bun.file(path.join(root, "src/cli/cmd/tui/component/dialog-provider-disconnect.tsx")).text()
expect(dialog).toContain("sdk.client.auth.remove")
expect(dialog).toContain("sdk.client.instance.dispose")
expect(dialog).toContain("sync.bootstrap")
})
test("provider disconnect dialog handles non-api and managed providers", async () => {
const dialog = await Bun.file(path.join(root, "src/cli/cmd/tui/component/dialog-provider-disconnect.tsx")).text()
expect(dialog).toContain("disabled_providers")
expect(dialog).toContain("sdk.client.config")
expect(dialog).toContain(".update")
expect(dialog).toContain("isConsoleManagedProvider")
expect(dialog).toContain("Managed by")
})
test("provider disconnect dialog guards empty and duplicate submissions", async () => {
const dialog = await Bun.file(path.join(root, "src/cli/cmd/tui/component/dialog-provider-disconnect.tsx")).text()
expect(dialog).toContain("No connected providers")
expect(dialog).toContain("setPending")
expect(dialog).toContain("Disconnecting")
})