Files
Investidor-V2/tests/frontend/csv.test.mjs
T
nala 1106509116
tests / ci (push) Canceled after 0s
vrsao 2
2026-10-08 14:02:01 +02:00

21 lines
865 B
JavaScript

import assert from 'node:assert/strict';
import test from 'node:test';
import { csvCell, csvCellWithDelimiter } from '../../resources/js/lib/csv.js';
void test('CSV cells neutralize formula prefixes after spaces or controls', () => {
assert.equal(csvCell('=SUM(A1:A2)'), "'=SUM(A1:A2)");
assert.equal(csvCell('\t@SUM(A1:A2)'), "'\t@SUM(A1:A2)");
assert.equal(csvCell('\uFEFF+cmd'), "'\uFEFF+cmd");
assert.equal(csvCell('-2+cmd'), "'-2+cmd");
});
void test('CSV cells preserve numeric negatives and quote/escape delimiters', () => {
assert.equal(csvCell('-5000.00'), '-5000.00');
assert.equal(
csvCellWithDelimiter('Planeado; realizado', ';'),
'"Planeado; realizado"',
);
assert.equal(csvCell('Operação, mensal'), '"Operação, mensal"');
assert.equal(csvCell('=HYPERLINK("x")'), '"\'=HYPERLINK(""x"")"');
});