excel-as-json
Version:
Convert Excel data to JSON
76 lines (60 loc) • 2.19 kB
JavaScript
// Generated by CoffeeScript 2.2.4
(function() {
var RGR23_IS_COL_ORIENTED, RGR23_OUT_JSON, RGR23_SHEET, RGR28_IS_COL_ORIENTED, RGR28_OUT_JSON, RGR28_SHEET, RGR_SRC_XLSX, chai, expect, fs, processFile;
processFile = require('../lib/excel-as-json').processFile;
fs = require('fs');
// TODO: How to get chai defined in a more global way
chai = require('chai');
chai.should();
expect = chai.expect;
RGR_SRC_XLSX = 'data/regression.xlsx';
RGR23_SHEET = 1;
RGR23_IS_COL_ORIENTED = true;
RGR23_OUT_JSON = 'build/rgr23.json';
RGR28_SHEET = 2;
RGR28_IS_COL_ORIENTED = false;
RGR28_OUT_JSON = 'build/rgr28.json';
describe('regression 23', function() {
it('should produce empty arrays for flat arrays without values', function(done) {
var options;
options = {
sheet: RGR23_SHEET,
isColOriented: RGR23_IS_COL_ORIENTED,
omitEmptyFields: false
};
return processFile(RGR_SRC_XLSX, RGR23_OUT_JSON, options, function(err, data) {
expect(err).to.be.an('undefined');
expect(data[0]).to.have.property('emptyArray').with.lengthOf(0);
return done();
});
});
return it('should remove flat arrays when omitEmptyFields and value list is blank', function(done) {
var options;
options = {
sheet: RGR23_SHEET,
isColOriented: RGR23_IS_COL_ORIENTED,
omitEmptyFields: true
};
return processFile(RGR_SRC_XLSX, RGR23_OUT_JSON, options, function(err, data) {
expect(err).to.be.an('undefined');
expect(data[0].emptyArray).to.be.an('undefined');
return done();
});
});
});
describe('regression 28', function() {
return it('should produce an empty array when no value rows are provided', function(done) {
var options;
options = {
sheet: RGR28_SHEET,
isColOriented: RGR28_IS_COL_ORIENTED,
omitEmptyFields: false
};
return processFile(RGR_SRC_XLSX, RGR28_OUT_JSON, options, function(err, data) {
expect(err).to.be.an('undefined');
expect(data).to.be.an('array').with.lengthOf(0);
return done();
});
});
});
}).call(this);