Skip to content

Commit 598f8b1

Browse files
committed
converting tests to only read csv files once and pass into json2csv and csv2json test files
1 parent 147210f commit 598f8b1

File tree

3 files changed

+39
-51
lines changed

3 files changed

+39
-51
lines changed

test/testCsv2Json.js

Lines changed: 6 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,11 @@ var should = require('should'),
22
assert = require('assert'),
33
converter = require('../lib/converter'),
44
constants = require('../lib/constants'),
5-
fs = require('fs'),
65
_ = require('underscore'),
76
Promise = require('bluebird'),
8-
async = require('async'),
97
defaultOptions = constants.DefaultOptions,
10-
jsonTestData = require('./testJsonFilesList'),
11-
csvTestData = {unQuoted: {}, quoted: {}}, // Document where all csv files will be loaded into
12-
csvFiles = require('./testCsvFilesList'),
8+
jsonTestData,
9+
csvTestData,
1310
options;
1411

1512
var csv2jsonTests = function () {
@@ -1226,27 +1223,12 @@ var csv2jsonTests = function () {
12261223
});
12271224
};
12281225

1229-
var readCsvFile = function (masterKey, fileInfo, callback) {
1230-
csvTestData[masterKey][fileInfo.key] = fs.readFileSync(fileInfo.file).toString();
1231-
return callback(null, csvTestData[masterKey][fileInfo.key]);
1232-
};
1233-
12341226
module.exports = {
1235-
runTests: function () {
1236-
describe('csv2json', function() {
1237-
before(function(done) {
1238-
async.parallel(
1239-
_.flatten(_.map(csvFiles, function (grouping) {
1240-
return _.map(grouping.files, function (fileInfo) {
1241-
return _.partial(readCsvFile, grouping.key, fileInfo);
1242-
});
1243-
})),
1244-
function(err, results) {
1245-
if (err) throw err;
1246-
done();
1247-
});
1248-
});
1227+
runTests: function (testData) {
1228+
jsonTestData = testData.jsonTestData;
1229+
csvTestData = testData.csvTestData;
12491230

1231+
describe('csv2json', function() {
12501232
beforeEach(function () {
12511233
options = null;
12521234
});

test/testJson2Csv.js

Lines changed: 6 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,11 @@ var should = require('should'),
22
assert = require('assert'),
33
converter = require('../lib/converter'),
44
constants = require('../lib/constants'),
5-
fs = require('fs'),
65
_ = require('underscore'),
76
Promise = require('bluebird'),
8-
async = require('async'),
97
defaultOptions = constants.DefaultOptions,
10-
jsonTestData = require('./testJsonFilesList'),
11-
csvTestData = {unQuoted: {}, quoted: {}}, // Document where all csv files will be loaded into
12-
csvFiles = require('./testCsvFilesList'),
8+
jsonTestData,
9+
csvTestData,
1310
options;
1411

1512
var json2csvTests = function () {
@@ -1450,27 +1447,12 @@ var json2csvTests = function () {
14501447
});
14511448
};
14521449

1453-
var readCsvFile = function (masterKey, fileInfo, callback) {
1454-
csvTestData[masterKey][fileInfo.key] = fs.readFileSync(fileInfo.file).toString();
1455-
return callback(null, csvTestData[masterKey][fileInfo.key]);
1456-
};
1457-
14581450
module.exports = {
1459-
runTests: function () {
1460-
describe('json2csv', function() {
1461-
before(function(done) {
1462-
async.parallel(
1463-
_.flatten(_.map(csvFiles, function (grouping) {
1464-
return _.map(grouping.files, function (fileInfo) {
1465-
return _.partial(readCsvFile, grouping.key, fileInfo);
1466-
});
1467-
})),
1468-
function(err, results) {
1469-
if (err) throw err;
1470-
done();
1471-
});
1472-
});
1451+
runTests: function (testData) {
1452+
jsonTestData = testData.jsonTestData;
1453+
csvTestData = testData.csvTestData;
14731454

1455+
describe('json2csv', function() {
14741456
beforeEach(function () {
14751457
options = null;
14761458
});

test/tests.js

Lines changed: 27 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,31 @@
11
var json2csvTests = require('./testJson2Csv'),
2-
csv2jsonTests = require('./testCsv2Json');
2+
csv2jsonTests = require('./testCsv2Json'),
3+
jsonTestData = require('./testJsonFilesList'),
4+
async = require('async'),
5+
fs = require('fs'),
6+
_ = require('underscore'),
7+
csvTestData = {unQuoted: {}, quoted: {}}, // Document where all csv files will be loaded into
8+
csvFiles = require('./testCsvFilesList');
9+
10+
var readCsvFile = function (masterKey, fileInfo, callback) {
11+
csvTestData[masterKey][fileInfo.key] = fs.readFileSync(fileInfo.file).toString();
12+
return callback(null, csvTestData[masterKey][fileInfo.key]);
13+
};
314

415
describe('json-2-csv Module', function() {
5-
json2csvTests.runTests();
6-
csv2jsonTests.runTests();
16+
before(function(done) {
17+
async.parallel(
18+
_.flatten(_.map(csvFiles, function (grouping) {
19+
return _.map(grouping.files, function (fileInfo) {
20+
return _.partial(readCsvFile, grouping.key, fileInfo);
21+
});
22+
})),
23+
function(err, results) {
24+
if (err) throw err;
25+
done();
26+
});
27+
});
28+
29+
json2csvTests.runTests({jsonTestData: jsonTestData, csvTestData: csvTestData});
30+
csv2jsonTests.runTests({jsonTestData: jsonTestData, csvTestData: csvTestData});
731
});

0 commit comments

Comments
 (0)