webssh2-server
Version:
A Websocket to SSH2 gateway using xterm.js, socket.io, ssh2
34 lines (24 loc) • 1.11 kB
JavaScript
import { test, mock } from 'node:test'
import assert from 'node:assert/strict'
import { createNamespacedDebug, logError } from '../app/logger.js'
test('createNamespacedDebug creates debug function with correct namespace', (t) => {
const debug = createNamespacedDebug('test')
assert.equal(typeof debug, 'function')
assert.equal(debug.namespace, 'webssh2:test')
})
test('logError logs error message without error object', (t) => {
const consoleMock = mock.method(console, 'error')
logError('test message')
assert.equal(consoleMock.mock.calls.length, 1)
assert.deepEqual(consoleMock.mock.calls[0].arguments, ['test message'])
consoleMock.mock.restore()
})
test('logError logs error message with error object', (t) => {
const consoleMock = mock.method(console, 'error')
const testError = new Error('test error')
logError('test message', testError)
assert.equal(consoleMock.mock.calls.length, 2)
assert.deepEqual(consoleMock.mock.calls[0].arguments, ['test message'])
assert.deepEqual(consoleMock.mock.calls[1].arguments, [`ERROR: ${testError}`])
consoleMock.mock.restore()
})