diff --git a/src/utils/convertToCsv.spec.ts b/src/utils/convertToCsv.spec.ts index b6e48bd..8a56335 100644 --- a/src/utils/convertToCsv.spec.ts +++ b/src/utils/convertToCsv.spec.ts @@ -8,7 +8,7 @@ describe('convertToCsv', () => { { foo: 'asd', bar: `'qwert'` } ] - const expectedOutput = `foo:$5. bar:$7.\r\n"'bar'",abc\r\nsadf,def\r\nasd,"'qwert'"` + const expectedOutput = `foo:$char5. bar:$char7.\r\n"'bar'",abc\r\nsadf,def\r\nasd,"'qwert'"` expect(convertToCSV(data)).toEqual(expectedOutput) }) @@ -20,7 +20,7 @@ describe('convertToCsv', () => { { foo: 'asd', bar: `"qwert"` } ] - const expectedOutput = `foo:$5. bar:$7.\r\n"""bar""",abc\r\nsadf,def\r\nasd,"""qwert"""` + const expectedOutput = `foo:$char5. bar:$char7.\r\n"""bar""",abc\r\nsadf,def\r\nasd,"""qwert"""` expect(convertToCSV(data)).toEqual(expectedOutput) }) @@ -28,7 +28,7 @@ describe('convertToCsv', () => { it('should convert values with mixed quotes', () => { const data = [{ foo: `'blah'`, bar: `"blah"` }] - const expectedOutput = `foo:$6. bar:$6.\r\n"'blah'","""blah"""` + const expectedOutput = `foo:$char6. bar:$char6.\r\n"'blah'","""blah"""` expect(convertToCSV(data)).toEqual(expectedOutput) }) @@ -36,7 +36,7 @@ describe('convertToCsv', () => { it('should convert values with mixed quotes', () => { const data = [{ foo: `'blah,"'`, bar: `"blah,blah" "` }] - const expectedOutput = `foo:$8. bar:$13.\r\n"'blah,""'","""blah,blah"" """` + const expectedOutput = `foo:$char8. bar:$char13.\r\n"'blah,""'","""blah,blah"" """` expect(convertToCSV(data)).toEqual(expectedOutput) }) @@ -44,7 +44,7 @@ describe('convertToCsv', () => { it('should convert values with mixed quotes', () => { const data = [{ foo: `',''`, bar: `","` }] - const expectedOutput = `foo:$4. bar:$3.\r\n"',''",""","""` + const expectedOutput = `foo:$char4. bar:$char3.\r\n"',''",""","""` expect(convertToCSV(data)).toEqual(expectedOutput) }) @@ -52,7 +52,7 @@ describe('convertToCsv', () => { it('should convert values with mixed quotes', () => { const data = [{ foo: `','`, bar: `,"` }] - const expectedOutput = `foo:$3. bar:$2.\r\n"','",","""` + const expectedOutput = `foo:$char3. bar:$char2.\r\n"','",","""` expect(convertToCSV(data)).toEqual(expectedOutput) }) @@ -60,7 +60,7 @@ describe('convertToCsv', () => { it('should convert values with mixed quotes', () => { const data = [{ foo: `"`, bar: `'` }] - const expectedOutput = `foo:$1. bar:$1.\r\n"""","'"` + const expectedOutput = `foo:$char1. bar:$char1.\r\n"""","'"` expect(convertToCSV(data)).toEqual(expectedOutput) }) @@ -68,7 +68,7 @@ describe('convertToCsv', () => { it('should convert values with mixed quotes', () => { const data = [{ foo: `,`, bar: `',` }] - const expectedOutput = `foo:$1. bar:$2.\r\n",","',"` + const expectedOutput = `foo:$char1. bar:$char2.\r\n",","',"` expect(convertToCSV(data)).toEqual(expectedOutput) }) @@ -82,7 +82,7 @@ describe('convertToCsv', () => { { col1: 42, col2: null, col3: 'x', col4: '' } ] - const expectedOutput = `col1:best. col2:best. col3:$1. col4:$1.\r\n42,.,x,\r\n42,.,x,\r\n42,.,x,\r\n42,.,x,\r\n42,.,x,` + const expectedOutput = `col1:best. col2:best. col3:$char1. col4:$char1.\r\n42,.,x,\r\n42,.,x,\r\n42,.,x,\r\n42,.,x,\r\n42,.,x,` expect(convertToCSV(data)).toEqual(expectedOutput) }) @@ -96,28 +96,28 @@ describe('convertToCsv', () => { { col1: 42, col2: 1.62, col3: 'x', col4: 'x' } ] - const expectedOutput = `col1:best. col2:best. col3:$1. col4:$1.\r\n42,.,x,\r\n42,.,x,\r\n42,.,x,\r\n42,1.62,x,x\r\n42,1.62,x,x` + const expectedOutput = `col1:best. col2:best. col3:$char1. col4:$char1.\r\n42,.,x,\r\n42,.,x,\r\n42,.,x,\r\n42,1.62,x,x\r\n42,1.62,x,x` expect(convertToCSV(data)).toEqual(expectedOutput) }) it('should convert values with common special characters', () => { - expect(convertToCSV([{ tab: '\t' }])).toEqual(`tab:$1.\r\n\"\t\"`) - expect(convertToCSV([{ lf: '\n' }])).toEqual(`lf:$1.\r\n\"\n\"`) + expect(convertToCSV([{ tab: '\t' }])).toEqual(`tab:$char1.\r\n\"\t\"`) + expect(convertToCSV([{ lf: '\n' }])).toEqual(`lf:$char1.\r\n\"\n\"`) expect(convertToCSV([{ semicolon: ';semi' }])).toEqual( - `semicolon:$5.\r\n;semi` + `semicolon:$char5.\r\n;semi` ) - expect(convertToCSV([{ percent: '%' }])).toEqual(`percent:$1.\r\n%`) + expect(convertToCSV([{ percent: '%' }])).toEqual(`percent:$char1.\r\n%`) expect(convertToCSV([{ singleQuote: "'" }])).toEqual( - `singleQuote:$1.\r\n\"'\"` + `singleQuote:$char1.\r\n\"'\"` ) expect(convertToCSV([{ doubleQuote: '"' }])).toEqual( - `doubleQuote:$1.\r\n""""` + `doubleQuote:$char1.\r\n""""` ) - expect(convertToCSV([{ crlf: '\r\n' }])).toEqual(`crlf:$2.\r\n\"\n\"`) - expect(convertToCSV([{ euro: '€euro' }])).toEqual(`euro:$7.\r\n€euro`) + expect(convertToCSV([{ crlf: '\r\n' }])).toEqual(`crlf:$char2.\r\n\"\n\"`) + expect(convertToCSV([{ euro: '€euro' }])).toEqual(`euro:$char7.\r\n€euro`) expect(convertToCSV([{ banghash: '!#banghash' }])).toEqual( - `banghash:$10.\r\n!#banghash` + `banghash:$char10.\r\n!#banghash` ) }) @@ -138,31 +138,33 @@ describe('convertToCsv', () => { } ] - const expectedOutput = `speech0:$7. pct:$8. speech:$7. slash:$6. slashWithSpecial:$7. macvar:$10. chinese:$14. sigma:$7. at:$3. serbian:$12. dollar:$1.\r\n"""speech",%percent,"""speech",\\slash,\"\\\tslash\",&sysuserid,传/傳chinese,Σsigma,@at,Српски,$` + const expectedOutput = `speech0:$char7. pct:$char8. speech:$char7. slash:$char6. slashWithSpecial:$char7. macvar:$char10. chinese:$char14. sigma:$char7. at:$char3. serbian:$char12. dollar:$char1.\r\n"""speech",%percent,"""speech",\\slash,\"\\\tslash\",&sysuserid,传/傳chinese,Σsigma,@at,Српски,$` expect(convertToCSV(data)).toEqual(expectedOutput) - expect(convertToCSV([{ speech: 'menext' }])).toEqual(`speech:$6.\r\nmenext`) + expect(convertToCSV([{ speech: 'menext' }])).toEqual( + `speech:$char6.\r\nmenext` + ) expect(convertToCSV([{ speech: 'me\nnext' }])).toEqual( - `speech:$7.\r\n\"me\nnext\"` + `speech:$char7.\r\n\"me\nnext\"` ) expect(convertToCSV([{ speech: `me'next` }])).toEqual( - `speech:$7.\r\n\"me'next\"` + `speech:$char7.\r\n\"me'next\"` ) expect(convertToCSV([{ speech: `me"next` }])).toEqual( - `speech:$7.\r\n\"me""next\"` + `speech:$char7.\r\n\"me""next\"` ) expect(convertToCSV([{ speech: `me""next` }])).toEqual( - `speech:$8.\r\n\"me""""next\"` + `speech:$char8.\r\n\"me""""next\"` ) expect(convertToCSV([{ slashWithSpecial: '\\\tslash' }])).toEqual( - `slashWithSpecial:$7.\r\n\"\\\tslash\"` + `slashWithSpecial:$char7.\r\n\"\\\tslash\"` ) expect(convertToCSV([{ slashWithSpecial: '\\ \tslash' }])).toEqual( - `slashWithSpecial:$8.\r\n\"\\ \tslash\"` + `slashWithSpecial:$char8.\r\n\"\\ \tslash\"` ) expect( convertToCSV([{ slashWithSpecialExtra: '\\\ts\tl\ta\ts\t\th\t' }]) - ).toEqual(`slashWithSpecialExtra:$13.\r\n\"\\\ts\tl\ta\ts\t\th\t\"`) + ).toEqual(`slashWithSpecialExtra:$char13.\r\n\"\\\ts\tl\ta\ts\t\th\t\"`) }) })