UNPKG

ya-csv

Version:

CSV parser and generator for Node.js

45 lines (37 loc) 1.14 kB
var util; try { util = require('util'); } catch (e) { util = require('sys'); } var csv = require('../lib/ya-csv'), assert = require('assert'); var testFile = __dirname + '/crazy.csv'; var expectedRows = 7; var expectedColsPerRow = 4; var csvInNoOptions = csv.createCsvFileReader(testFile); var csvIn = csv.createCsvFileReader(testFile, { 'separator': ',', 'quote': '"', 'comment': '#', }); var csvOutNoOptions = csv.createCsvFileWriter('/dev/null'); var csvOut = csv.createCsvFileWriter('/dev/null', { 'encoding': 'utf8' }); var lines = 0; var columns = 0; csvIn.addListener('end', function() { assert.strictEqual(expectedRows, lines, "Wrong number of records"); csvOut.close(); }); csvOut.addListener('close', function(){ console.log('Closed the writer'); }); csvIn.addListener('data', function(data) { lines++; assert.notStrictEqual(typeof data[data.length - 1], "undefined"); data.push(1); csvOut.writeRecord(data); assert.strictEqual(expectedColsPerRow + 1, data.length, "Wrong number of fields per record in record #" + lines); columns += data.length; });