From 0548ae993c4b2af4393ad6a3b9b333505d0d4698 Mon Sep 17 00:00:00 2001 From: Nick Playfair Date: Mon, 1 Feb 2021 19:42:23 +0000 Subject: [PATCH] getLayers tests --- test/index.test.js | 30 +++++++++++++++++++++++++ test/layers/CAMOutputs/Empty/dummy.file | 0 2 files changed, 30 insertions(+) create mode 100644 test/index.test.js create mode 100644 test/layers/CAMOutputs/Empty/dummy.file diff --git a/test/index.test.js b/test/index.test.js new file mode 100644 index 0000000..09725e3 --- /dev/null +++ b/test/index.test.js @@ -0,0 +1,30 @@ +/* eslint-disable */ +const path = require('path'); +const fs = require('fs-extra'); +const fileProc = require('../index.js'); + +const testGerber = path.join(__dirname, 'Arduino-Pro-Mini.zip'); +const testLayers = path.join(__dirname, 'layers'); +const emptyFolder = path.join(__dirname, 'layers', 'Empty'); + +// getLayers +test('Promise of an array of layers from a given folder', () => { + return fileProc.getLayers2(testLayers).then(data => { + expect(data).toEqual( + expect.arrayContaining([ + expect.objectContaining({ + filename: expect.any(String), + gerber: expect.any(fs.ReadStream), + }) + ]) + ); + }); +}); + +test('Non-existent folder should reject promise with error', () => { + return expect(fileProc.getLayers2('./invalid_folder')).rejects.toThrow('Layers folder does not exist'); +}); + +test('Folder with incorrect number of layers should reject promise with error', () => { + return expect(fileProc.getLayers2(emptyFolder)).rejects.toThrow('Layer not found'); +}); diff --git a/test/layers/CAMOutputs/Empty/dummy.file b/test/layers/CAMOutputs/Empty/dummy.file new file mode 100644 index 0000000..e69de29