18 lines
756 B
JavaScript
18 lines
756 B
JavaScript
import assert from 'node:assert/strict';
|
|
import { test } from 'node:test';
|
|
import { buildCellUpdatedMessage } from './messageUtils.js';
|
|
|
|
const msg = (value) => buildCellUpdatedMessage({ lineId: 1, lineIdCode: '0.1', column: 'q1.m1', value });
|
|
|
|
test('buildCellUpdatedMessage: undefined → null, ключ value есть после JSON.stringify', () => {
|
|
const m = msg(undefined);
|
|
assert.deepEqual(m, { event: 'cell_updated', data: { line_id: 1, line_id_code: '0.1', column: 'q1.m1', value: null } });
|
|
assert.match(JSON.stringify(m), /"value":null/);
|
|
});
|
|
|
|
test('buildCellUpdatedMessage: прочие значения не меняются', () => {
|
|
for (const v of [null, 0, '', '1.5', 42, 'текст']) {
|
|
assert.equal(msg(v).data.value, v);
|
|
}
|
|
});
|