Files
bare-operating-system/packages/bare-os-booter/test.bare-openssh-pty.js
T
2026-08-18 18:11:34 -04:00

23 lines
960 B
JavaScript

import test from 'brittle'
import { bareOpensshFormatConsoleTextForPty } from './lib/services/bare-openssh-pty-console.js'
test('bareOpensshFormatConsoleTextForPty converts LF to CRLF', (t) => {
t.is(bareOpensshFormatConsoleTextForPty('a\nb'), 'a\r\nb')
t.is(bareOpensshFormatConsoleTextForPty('a\n\nb'), 'a\r\n\r\nb')
})
test('bareOpensshFormatConsoleTextForPty leaves CRLF unchanged', (t) => {
t.is(bareOpensshFormatConsoleTextForPty('a\r\nb'), 'a\r\nb')
})
test('bareOpensshFormatConsoleTextForPty matches ssh console.log line wrapping', (t) => {
function sshPtyConsolePayload(...args) {
const body = args.map(String).join(' ')
const normalized = bareOpensshFormatConsoleTextForPty(body)
return normalized.endsWith('\r\n') ? normalized : normalized + '\r\n'
}
t.is(sshPtyConsolePayload('x'), 'x\r\n')
t.is(sshPtyConsolePayload('line1\nline2'), 'line1\r\nline2\r\n')
t.is(sshPtyConsolePayload('already\r\n'), 'already\r\n')
})