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:
@@ -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))
|
||||
})
|
||||
})
|
||||
|
||||
|
||||
@@ -1,7 +1,11 @@
|
||||
export type SplitDirection = "-h" | "-v"
|
||||
|
||||
export function isInsideTmuxEnvironment(environment: Record<string, string | undefined>): boolean {
|
||||
return Boolean(environment.TMUX)
|
||||
}
|
||||
|
||||
export function isInsideTmux(): boolean {
|
||||
return Boolean(process.env.TMUX)
|
||||
return isInsideTmuxEnvironment(process.env)
|
||||
}
|
||||
|
||||
export function getCurrentPaneId(): string | undefined {
|
||||
|
||||
Reference in New Issue
Block a user