Spaces:
Runtime error
Runtime error
File size: 1,042 Bytes
46252cd | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | import { test } from 'node:test';
import assert from 'node:assert/strict';
import { coerceFieldInput, emptyForField } from './pluginConfigForm.ts';
import type { PluginConfigField } from '../services/api';
const num: PluginConfigField = { type: 'number' };
const str: PluginConfigField = { type: 'string' };
test('coerceFieldInput: a cleared number field becomes undefined (never an empty string)', () => {
assert.equal(coerceFieldInput(num, ''), undefined);
});
test('coerceFieldInput: a non-empty number is coerced to a Number', () => {
assert.equal(coerceFieldInput(num, '42'), 42);
});
test('coerceFieldInput: a string field passes the raw value through unchanged', () => {
assert.equal(coerceFieldInput(str, ''), '');
assert.equal(coerceFieldInput(str, 'hi'), 'hi');
});
test('emptyForField: a number field seeds to undefined, not an empty string', () => {
assert.equal(emptyForField(num), undefined);
});
test('emptyForField: a string field seeds to an empty string', () => {
assert.equal(emptyForField(str), '');
});
|