mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-07-14 14:12:44 +00:00
Main's rewritten test_tui_npm_install.py tests call _make_tui_argv expecting the Ink/npm flow unconditionally; with the dual-engine dispatch merged in, _resolve_tui_engine() auto-selects opentui whenever ui-opentui/dist is built in the repo, routing the call away from the path under test (first subprocess became 'node --version' instead of 'npm run build'). Pin the engine to ink via an autouse fixture, mirroring the existing pinning precedent in test_tui_resume_flow.py.
45 lines
1.2 KiB
JavaScript
45 lines
1.2 KiB
JavaScript
/**
|
|
* Tests for electron/workspace-cwd.cjs.
|
|
*
|
|
* Run with: node --test electron/workspace-cwd.test.cjs
|
|
*/
|
|
|
|
const test = require('node:test')
|
|
const assert = require('node:assert/strict')
|
|
const path = require('node:path')
|
|
|
|
const { isPackagedInstallPath } = require('./workspace-cwd.cjs')
|
|
|
|
const installRoot = path.resolve('/opt/Hermes')
|
|
|
|
test('isPackagedInstallPath returns false when not packaged', () => {
|
|
assert.equal(
|
|
isPackagedInstallPath(installRoot, { isPackaged: false, installRoots: [installRoot] }),
|
|
false
|
|
)
|
|
})
|
|
|
|
test('isPackagedInstallPath flags the install root itself', () => {
|
|
assert.equal(
|
|
isPackagedInstallPath(installRoot, { isPackaged: true, installRoots: [installRoot] }),
|
|
true
|
|
)
|
|
})
|
|
|
|
test('isPackagedInstallPath flags paths nested under the install root', () => {
|
|
const nested = path.join(installRoot, 'resources', 'app.asar')
|
|
|
|
assert.equal(
|
|
isPackagedInstallPath(nested, { isPackaged: true, installRoots: [installRoot] }),
|
|
true
|
|
)
|
|
})
|
|
|
|
test('isPackagedInstallPath ignores paths outside the install root', () => {
|
|
const homeProject = path.resolve('/home/user/projects/demo')
|
|
|
|
assert.equal(
|
|
isPackagedInstallPath(homeProject, { isPackaged: true, installRoots: [installRoot] }),
|
|
false
|
|
)
|
|
})
|