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(); });