19 lines
856 B
JavaScript
19 lines
856 B
JavaScript
import assert from 'node:assert/strict';
|
|
import test from 'node:test';
|
|
import { inputText } from '../../resources/js/lib/input-text.ts';
|
|
|
|
void test('text values preserve deliberate scalar input including zero and false', () => {
|
|
assert.equal(inputText(' deliberate text '), ' deliberate text ');
|
|
assert.equal(inputText(0), '0');
|
|
assert.equal(inputText(false), 'false');
|
|
assert.equal(inputText(null), 'null');
|
|
assert.equal(inputText(undefined), 'undefined');
|
|
});
|
|
|
|
void test('structured data is visibly invalid and cannot masquerade as a saved JSON snapshot', () => {
|
|
const original = { version: 99, privateValue: 'preserved' };
|
|
assert.equal(inputText(original), '[valor não textual]');
|
|
assert.throws(() => JSON.parse(inputText(original)));
|
|
assert.deepEqual(original, { version: 99, privateValue: 'preserved' });
|
|
});
|