From 48707a69013f3556733b1cf5fc311d8f94f377df Mon Sep 17 00:00:00 2001 From: YeonGyu-Kim Date: Mon, 16 Mar 2026 11:36:38 +0900 Subject: [PATCH] test(tmux): isolate tmux environment checks from process env Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus --- src/shared/tmux/tmux-utils.test.ts | 31 ++++++++++------------- src/shared/tmux/tmux-utils/environment.ts | 6 ++++- 2 files changed, 19 insertions(+), 18 deletions(-) diff --git a/src/shared/tmux/tmux-utils.test.ts b/src/shared/tmux/tmux-utils.test.ts index 82242f041..94ee045f2 100644 --- a/src/shared/tmux/tmux-utils.test.ts +++ b/src/shared/tmux/tmux-utils.test.ts @@ -7,51 +7,48 @@ import { closeTmuxPane, applyLayout, } from "./tmux-utils" +import { isInsideTmuxEnvironment } from "./tmux-utils/environment" describe("isInsideTmux", () => { test("returns true when TMUX env is set", () => { // given - const originalTmux = process.env.TMUX - process.env.TMUX = "/tmp/tmux-1000/default" + const environment = { TMUX: "/tmp/tmux-1000/default" } // when - const result = isInsideTmux() + const result = isInsideTmuxEnvironment(environment) // then expect(result).toBe(true) - - // cleanup - process.env.TMUX = originalTmux }) test("returns false when TMUX env is not set", () => { // given - const originalTmux = process.env.TMUX - delete process.env.TMUX + const environment = {} // when - const result = isInsideTmux() + const result = isInsideTmuxEnvironment(environment) // then expect(result).toBe(false) - - // cleanup - process.env.TMUX = originalTmux }) test("returns false when TMUX env is empty string", () => { // given - const originalTmux = process.env.TMUX - process.env.TMUX = "" + const environment = { TMUX: "" } // when - const result = isInsideTmux() + const result = isInsideTmuxEnvironment(environment) // then expect(result).toBe(false) + }) - // cleanup - process.env.TMUX = originalTmux + test("returns the same result as the process environment helper", () => { + // given, #when + const result = isInsideTmux() + + // then + expect(result).toBe(isInsideTmuxEnvironment(process.env)) }) }) diff --git a/src/shared/tmux/tmux-utils/environment.ts b/src/shared/tmux/tmux-utils/environment.ts index 5c8166b3f..104fcc89b 100644 --- a/src/shared/tmux/tmux-utils/environment.ts +++ b/src/shared/tmux/tmux-utils/environment.ts @@ -1,7 +1,11 @@ export type SplitDirection = "-h" | "-v" +export function isInsideTmuxEnvironment(environment: Record): boolean { + return Boolean(environment.TMUX) +} + export function isInsideTmux(): boolean { - return Boolean(process.env.TMUX) + return isInsideTmuxEnvironment(process.env) } export function getCurrentPaneId(): string | undefined {