From 416b65d65e7eb45406e42a1011cb4f8d86c1fb9b Mon Sep 17 00:00:00 2001 From: arookieofc <2128194521@qq.com> Date: Tue, 3 Nov 2026 08:31:19 +0800 Subject: [PATCH] test(editor): make the detach-tab save-failure document dirty (#924) Since #920, saves skip clean documents, so the detach-tab save-failure test never reached its mocked failing save. The test now edits the document first, keeping its intent: a failing save keeps the tab and opens no window. Co-authored-by: a-rookie-of-C-language <186315048+a-rookie-of-C-language@users.noreply.github.com> --- src/editor/core/detachTab.test.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/editor/core/detachTab.test.ts b/src/editor/core/detachTab.test.ts index e919c6dd0..7786c23db 100644 --- a/src/editor/core/detachTab.test.ts +++ b/src/editor/core/detachTab.test.ts @@ -82,6 +82,9 @@ describe("detachTab", () => { ctrl.start(); await ctrl.openFile(path, { focus: false }); const [pane, id] = current(); + // Clean documents skip saving entirely, so the document must be dirty for + // the mocked save failure to be reached. + ctrl.slotFor(id)!.dispatchLocal({ changes: { from: 0, to: 8, insert: "edited" } }); vi.spyOn(backend, "save").mockRejectedValue(new Error("save failed")); expect(await ctrl.detachTab(pane, id)).toBe(false); expect(hasTab(id)).toBe(true);