From 3363f0c63afa83bba25eecb396f9ffeb56187b1c Mon Sep 17 00:00:00 2001 From: YeonGyu-Kim Date: Tue, 3 Mar 2026 00:27:53 +0900 Subject: [PATCH] fix(test): resolve test failure in PR #2021 fixes --- .../collect-git-diff-stats.test.ts | 44 +++++++++++-------- 1 file changed, 25 insertions(+), 19 deletions(-) diff --git a/src/shared/git-worktree/collect-git-diff-stats.test.ts b/src/shared/git-worktree/collect-git-diff-stats.test.ts index 659c42343..e74148bf2 100644 --- a/src/shared/git-worktree/collect-git-diff-stats.test.ts +++ b/src/shared/git-worktree/collect-git-diff-stats.test.ts @@ -50,28 +50,34 @@ describe("collectGitDiffStats", () => { //#then expect(execSyncSpy).not.toHaveBeenCalled() - expect(execFileSyncSpy).toHaveBeenCalledTimes(3) + expect(execFileSyncSpy.mock.calls.length).toBeGreaterThanOrEqual(3) - const [firstCallFile, firstCallArgs, firstCallOpts] = execFileSyncSpy.mock - .calls[0]! as unknown as [string, string[], { cwd?: string }] - expect(firstCallFile).toBe("git") - expect(firstCallArgs).toEqual(["diff", "--numstat", "HEAD"]) - expect(firstCallOpts.cwd).toBe(directory) - expect(firstCallArgs.join(" ")).not.toContain(directory) + const calls = execFileSyncSpy.mock.calls as unknown as Array<[string, string[], { cwd?: string }]> + const diffCall = calls.find(([, args]) => args[0] === "diff") + const statusCall = calls.find(([, args]) => args[0] === "status") + const untrackedCall = calls.find(([, args]) => args[0] === "ls-files") - const [secondCallFile, secondCallArgs, secondCallOpts] = execFileSyncSpy.mock - .calls[1]! as unknown as [string, string[], { cwd?: string }] - expect(secondCallFile).toBe("git") - expect(secondCallArgs).toEqual(["status", "--porcelain"]) - expect(secondCallOpts.cwd).toBe(directory) - expect(secondCallArgs.join(" ")).not.toContain(directory) + expect(diffCall).toBeDefined() + expect(statusCall).toBeDefined() + expect(untrackedCall).toBeDefined() - const [thirdCallFile, thirdCallArgs, thirdCallOpts] = execFileSyncSpy.mock - .calls[2]! as unknown as [string, string[], { cwd?: string }] - expect(thirdCallFile).toBe("git") - expect(thirdCallArgs).toEqual(["ls-files", "--others", "--exclude-standard"]) - expect(thirdCallOpts.cwd).toBe(directory) - expect(thirdCallArgs.join(" ")).not.toContain(directory) + const [diffCallFile, diffCallArgs, diffCallOpts] = diffCall! + expect(diffCallFile).toBe("git") + expect(diffCallArgs).toEqual(["diff", "--numstat", "HEAD"]) + expect(diffCallOpts.cwd).toBe(directory) + expect(diffCallArgs.join(" ")).not.toContain(directory) + + const [statusCallFile, statusCallArgs, statusCallOpts] = statusCall! + expect(statusCallFile).toBe("git") + expect(statusCallArgs).toEqual(["status", "--porcelain"]) + expect(statusCallOpts.cwd).toBe(directory) + expect(statusCallArgs.join(" ")).not.toContain(directory) + + const [untrackedCallFile, untrackedCallArgs, untrackedCallOpts] = untrackedCall! + expect(untrackedCallFile).toBe("git") + expect(untrackedCallArgs).toEqual(["ls-files", "--others", "--exclude-standard"]) + expect(untrackedCallOpts.cwd).toBe(directory) + expect(untrackedCallArgs.join(" ")).not.toContain(directory) expect(readFileSyncSpy).toHaveBeenCalled()