test(tmux): isolate tmux environment checks from process env

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
YeonGyu-Kim
2026-03-16 11:36:38 +09:00
parent fe3f0584ed
commit 48707a6901
2 changed files with 19 additions and 18 deletions
+14 -17
View File
@@ -7,51 +7,48 @@ import {
closeTmuxPane, closeTmuxPane,
applyLayout, applyLayout,
} from "./tmux-utils" } from "./tmux-utils"
import { isInsideTmuxEnvironment } from "./tmux-utils/environment"
describe("isInsideTmux", () => { describe("isInsideTmux", () => {
test("returns true when TMUX env is set", () => { test("returns true when TMUX env is set", () => {
// given // given
const originalTmux = process.env.TMUX const environment = { TMUX: "/tmp/tmux-1000/default" }
process.env.TMUX = "/tmp/tmux-1000/default"
// when // when
const result = isInsideTmux() const result = isInsideTmuxEnvironment(environment)
// then // then
expect(result).toBe(true) expect(result).toBe(true)
// cleanup
process.env.TMUX = originalTmux
}) })
test("returns false when TMUX env is not set", () => { test("returns false when TMUX env is not set", () => {
// given // given
const originalTmux = process.env.TMUX const environment = {}
delete process.env.TMUX
// when // when
const result = isInsideTmux() const result = isInsideTmuxEnvironment(environment)
// then // then
expect(result).toBe(false) expect(result).toBe(false)
// cleanup
process.env.TMUX = originalTmux
}) })
test("returns false when TMUX env is empty string", () => { test("returns false when TMUX env is empty string", () => {
// given // given
const originalTmux = process.env.TMUX const environment = { TMUX: "" }
process.env.TMUX = ""
// when // when
const result = isInsideTmux() const result = isInsideTmuxEnvironment(environment)
// then // then
expect(result).toBe(false) expect(result).toBe(false)
})
// cleanup test("returns the same result as the process environment helper", () => {
process.env.TMUX = originalTmux // given, #when
const result = isInsideTmux()
// then
expect(result).toBe(isInsideTmuxEnvironment(process.env))
}) })
}) })
+5 -1
View File
@@ -1,7 +1,11 @@
export type SplitDirection = "-h" | "-v" export type SplitDirection = "-h" | "-v"
export function isInsideTmuxEnvironment(environment: Record<string, string | undefined>): boolean {
return Boolean(environment.TMUX)
}
export function isInsideTmux(): boolean { export function isInsideTmux(): boolean {
return Boolean(process.env.TMUX) return isInsideTmuxEnvironment(process.env)
} }
export function getCurrentPaneId(): string | undefined { export function getCurrentPaneId(): string | undefined {