16 lines
510 B
TypeScript
16 lines
510 B
TypeScript
import { csvCell } from './csv-cell';
|
|
|
|
describe('CSV spreadsheet safety', () => {
|
|
it.each(['=1+1', '+SUM(1)', '-1+1', '@SUM(1)', ' =1', '\t=1', '\r=1', '\n=1'])(
|
|
'forces formula-like values to text: %j',
|
|
value => {
|
|
expect(csvCell(value)).toBe(`"'${value}"`);
|
|
}
|
|
);
|
|
it('preserves ordinary text, numeric zero and CSV escaping', () => {
|
|
expect(csvCell('Paris; "France"')).toBe('"Paris; ""France"""');
|
|
expect(csvCell(0)).toBe('"0"');
|
|
expect(csvCell(null)).toBe('""');
|
|
});
|
|
});
|