From 614e9bbfbf087b1bc7699370e90c309a5803071a Mon Sep 17 00:00:00 2001 From: Isaac Sanchez-Hawkins <266845420+isanchez404@users.noreply.github.com> Date: Tue, 12 May 2026 03:57:14 -0400 Subject: [PATCH] test(opencode): restore PATH after lifecycle tests (#1210) Co-authored-by: Isaac Sanchez --- packages/web/server/lib/opencode/lifecycle.test.js | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/packages/web/server/lib/opencode/lifecycle.test.js b/packages/web/server/lib/opencode/lifecycle.test.js index 28dc32a0..ab3169a8 100644 --- a/packages/web/server/lib/opencode/lifecycle.test.js +++ b/packages/web/server/lib/opencode/lifecycle.test.js @@ -11,14 +11,21 @@ vi.mock('node:child_process', () => ({ const { createOpenCodeLifecycleRuntime } = await import('./lifecycle.js'); const originalOpencodeBinary = process.env.OPENCODE_BINARY; +const originalPath = process.env.PATH; afterEach(() => { spawnMock.mockReset(); if (typeof originalOpencodeBinary === 'string') { process.env.OPENCODE_BINARY = originalOpencodeBinary; - return; + } else { + delete process.env.OPENCODE_BINARY; + } + + if (typeof originalPath === 'string') { + process.env.PATH = originalPath; + } else { + delete process.env.PATH; } - delete process.env.OPENCODE_BINARY; }); const createMockChild = () => { @@ -147,7 +154,6 @@ describe('OpenCode lifecycle', () => { it('falls back to process.env.PATH when neither build function is provided', async () => { delete process.env.OPENCODE_BINARY; - const originalPath = process.env.PATH; process.env.PATH = '/usr/bin:/bin'; const child = createMockChild(); spawnMock.mockImplementationOnce(() => { @@ -165,7 +171,6 @@ describe('OpenCode lifecycle', () => { const [, , options] = spawnMock.mock.calls[0]; expect(options.env.PATH).toBe('/usr/bin:/bin'); - process.env.PATH = originalPath; await server.close(); });