From 2a17ff6056e7300c637c2337ec73ce15fa5d7528 Mon Sep 17 00:00:00 2001 From: nanov Date: Wed, 6 Nov 2019 16:52:20 +0200 Subject: [PATCH] chore: write tests for date range --- test/unit/utils.js | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 test/unit/utils.js diff --git a/test/unit/utils.js b/test/unit/utils.js new file mode 100644 index 0000000..19eaf72 --- /dev/null +++ b/test/unit/utils.js @@ -0,0 +1,29 @@ +'use strict'; + +/* eslint-env node, mocha */ + +const { assert } = require('chai'); + +const utils = require('../../lib/utils'); + +describe('utils', () => { + describe('dateRange', () => { + describe('dateRange', () => { + it('should generate empty object with partial parameters', () => { + assert.isEmpty(utils.dateRange()); + }); + it('should throw with invalid date', () => { + assert.throws(() => utils.dateRange('2018-15-15', '2018-20-20')); + }); + it('should work for valid string input', () => { + assert.containsAllDeepKeys(utils.dateRange('2018-01-15', '2018-01-20'), { DateRange: { Start: '2018-01-15', End: '2018-01-20' } }); + }); + it('should work for Date string input', () => { + assert.containsAllDeepKeys(utils.dateRange(new Date('2018-01-15'), new Date('2018-01-20')), { DateRange: { Start: '2018-01-15', End: '2018-01-20' } }); + }); + it('should work for timestamp string input', () => { + assert.containsAllDeepKeys(utils.dateRange(new Date('2018-01-15').getTime(), new Date('2018-01-20').getTime()), { DateRange: { Start: '2018-01-15', End: '2018-01-20' } }); + }); + }); + }); +});