const test = require('node:test'); const assert = require('node:assert/strict'); const { readFileSync } = require('node:fs'); const { resolve, dirname } = require('node:path'); const Module = require('node:module'); const ts = require('../node_modules/typescript'); const helperPath = resolve(__dirname, '../src/utils/helpers.ts'); const compiled = ts.transpileModule(readFileSync(helperPath, 'utf8'), { fileName: helperPath, compilerOptions: { module: ts.ModuleKind.CommonJS, target: ts.ScriptTarget.ES2020 }, }).outputText; const helperModule = new Module(helperPath, module); helperModule.filename = helperPath; helperModule.paths = Module._nodeModulePaths(dirname(helperPath)); helperModule._compile(compiled, helperPath); const { dateTime } = helperModule.exports; test('dateTime uses YY/MM/DD HH:mm:ss with a 24-hour clock', () => { const late = new Date(2026, 9, 6, 23, 4, 5); const midnight = new Date(2026, 9, 6, 0, 4, 5); assert.equal(dateTime(late.toISOString()), '26/10/06 23:04:05'); assert.equal(dateTime(midnight.toISOString()), '26/10/06 00:04:05'); assert.equal(dateTime(null), '—'); assert.equal(dateTime('not-a-date'), 'not-a-date'); });