From c382edf4693a45e20470dcb1ab30698a63b24fae Mon Sep 17 00:00:00 2001 From: Angelos Chalaris Date: Fri, 6 Jul 2018 20:29:32 +0300 Subject: [PATCH] Quotation consistency between toCSV converters --- snippets/arrayToCSV.md | 6 +++--- test/arrayToCSV/arrayToCSV.js | 2 +- test/arrayToCSV/arrayToCSV.test.js | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/snippets/arrayToCSV.md b/snippets/arrayToCSV.md index 1d65c7adf..e0ecc3bc1 100644 --- a/snippets/arrayToCSV.md +++ b/snippets/arrayToCSV.md @@ -7,10 +7,10 @@ Use `Array.join('\n')` to combine all rows into a CSV string, separating each ro Omit the second argument, `delimiter`, to use a default delimiter of `,`. ```js -const arrayToCSV = (arr, delimiter = ',') => arr.map(v => v.join(delimiter)).join('\n'); +const arrayToCSV = (arr, delimiter = ',') => arr.map(v => v.map(x => `"${x}"`).join(delimiter)).join('\n'); ``` ```js -arrayToCSV([['a', 'b'], ['c', 'd']]); // 'a,b\nc,d' -arrayToCSV([['a', 'b'], ['c', 'd']], ';'); // 'a;b\nc;d' +arrayToCSV([['a', 'b'], ['c', 'd']]); // '"a","b"\n"c","d"' +arrayToCSV([['a', 'b'], ['c', 'd']], ';'); // '"a";"b"\n"c";"d"' ``` diff --git a/test/arrayToCSV/arrayToCSV.js b/test/arrayToCSV/arrayToCSV.js index aff8fe7de..f47570148 100644 --- a/test/arrayToCSV/arrayToCSV.js +++ b/test/arrayToCSV/arrayToCSV.js @@ -1,2 +1,2 @@ -const arrayToCSV = (arr, delimiter = ',') => arr.map(v => v.join(delimiter)).join('\n'); +const arrayToCSV = (arr, delimiter = ',') => arr.map(v => v.map(x => `"${x}"`).join(delimiter)).join('\n'); module.exports = arrayToCSV; \ No newline at end of file diff --git a/test/arrayToCSV/arrayToCSV.test.js b/test/arrayToCSV/arrayToCSV.test.js index 0105f66b1..7772ccff1 100644 --- a/test/arrayToCSV/arrayToCSV.test.js +++ b/test/arrayToCSV/arrayToCSV.test.js @@ -5,8 +5,8 @@ test('arrayToCSV is a Function', () => { expect(arrayToCSV).toBeInstanceOf(Function); }); test('arrayToCSV works with default delimiter', () => { - expect(arrayToCSV([['a','b'],['c','d']])).toBe('a,b\nc,d'); + expect(arrayToCSV([['a','b'],['c','d']])).toBe('"a","b"\n"c","d"'); }); test('arrayToCSV works with custom delimiter', () => { - expect(arrayToCSV([['a','b'],['c','d']], ';')).toBe('a;b\nc;d'); + expect(arrayToCSV([['a','b'],['c','d']], ';')).toBe('"a";"b"\n"c";"d"'); });