parse.spec.js 1.2 KB

123456789101112131415161718192021222324252627
  1. import fs from 'fs';
  2. import expect from 'expect';
  3. import {parse as parseXSLX} from './../../src';
  4. describe('node-xlsx parser', () => {
  5. it('should throw if no input is given', () => {
  6. expect(() => parseXSLX()).toThrow();
  7. });
  8. it('should properly parse an XLSX buffer', () => {
  9. const expected = JSON.parse(fs.readFileSync(`${__dirname}/../fixtures/test.json`));
  10. const buffer = fs.readFileSync(`${__dirname}/../fixtures/test.xlsx`);
  11. const result = JSON.parse(JSON.stringify(parseXSLX(buffer)));
  12. expect(result).toEqual(expected);
  13. });
  14. it('should properly parse an XLSX file', () => {
  15. const expected = JSON.parse(fs.readFileSync(`${__dirname}/../fixtures/test.json`));
  16. const file = `${__dirname}/../fixtures/test.xlsx`;
  17. const result = JSON.parse(JSON.stringify(parseXSLX(file)));
  18. expect(result).toEqual(expected);
  19. });
  20. it('should properly parse an XLSX file with date field', () => {
  21. const expected = JSON.parse(fs.readFileSync(`${__dirname}/../fixtures/dateField.json`));
  22. const file = `${__dirname}/../fixtures/dateField.xlsx`;
  23. const result = JSON.parse(JSON.stringify(parseXSLX(file, {raw: false})));
  24. expect(result).toEqual(expected);
  25. });
  26. });