Migrate UI cancel error to tagged error (#27112)
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
import { describe, expect, test } from "bun:test"
|
||||
import { AccountTransportError } from "../../src/account/schema"
|
||||
import { FormatError } from "../../src/cli/error"
|
||||
import { UI } from "../../src/cli/ui"
|
||||
|
||||
describe("cli.error", () => {
|
||||
test("formats account transport errors clearly", () => {
|
||||
@@ -15,4 +16,8 @@ describe("cli.error", () => {
|
||||
expect(formatted).toContain("This failed before the server returned an HTTP response.")
|
||||
expect(formatted).toContain("Check your network, proxy, or VPN configuration and try again.")
|
||||
})
|
||||
|
||||
test("formats cancelled UI errors as empty output", () => {
|
||||
expect(FormatError(new UI.CancelledError())).toBe("")
|
||||
})
|
||||
})
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
import { describe, expect, test } from "bun:test"
|
||||
import { Schema } from "effect"
|
||||
import { NamedError } from "@opencode-ai/core/util/error"
|
||||
import { errorData, errorFormat, errorMessage } from "../../src/util/error"
|
||||
import { UI } from "../../src/cli/ui"
|
||||
import { MessageError } from "../../src/session/message-error"
|
||||
|
||||
describe("util.error", () => {
|
||||
@@ -60,9 +58,7 @@ describe("util.error", () => {
|
||||
expect(error.toObject()).toEqual({ name: "ProviderAuthError", data: { providerID: "anthropic", message: "boom" } })
|
||||
})
|
||||
|
||||
test("void named errors accept JSON without data", () => {
|
||||
const serialized = JSON.parse(JSON.stringify(new UI.CancelledError(undefined).toObject()))
|
||||
|
||||
expect(Schema.decodeUnknownOption(UI.CancelledError.Schema)(serialized)._tag).toBe("Some")
|
||||
test("named errors without fields serialize data", () => {
|
||||
expect(new MessageError.OutputLengthError({}).toObject()).toEqual({ name: "MessageOutputLengthError", data: {} })
|
||||
})
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user