From 2150c2f39c29a0ec7b0e16b4b807b74a6ab04ae2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Raimund=20Schl=C3=BC=C3=9Fler?= Date: Mon, 22 Apr 2019 21:38:52 +0200 Subject: [PATCH] Test sort by due date --- package-lock.json | 6 +++++ package.json | 1 + tests/store/storeHelper.spec.js | 41 +++++++++++++++++++++++++++++++++ 3 files changed, 48 insertions(+) create mode 100644 tests/store/storeHelper.spec.js diff --git a/package-lock.json b/package-lock.json index 9aa4176b..51e1c695 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10513,6 +10513,12 @@ } } }, + "moment": { + "version": "2.24.0", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.24.0.tgz", + "integrity": "sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg==", + "dev": true + }, "move-concurrently": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", diff --git a/package.json b/package.json index 880ba3a3..d289721f 100644 --- a/package.json +++ b/package.json @@ -73,6 +73,7 @@ "jsdom": "^15.0.0", "jsdom-global": "^3.0.2", "node-sass": "^4.11.0", + "moment": "^2.24.0", "prettier-eslint": "^8.8.2", "raw-loader": "^2.0.0", "sass-loader": "^7.1.0", diff --git a/tests/store/storeHelper.spec.js b/tests/store/storeHelper.spec.js new file mode 100644 index 00000000..8983fad6 --- /dev/null +++ b/tests/store/storeHelper.spec.js @@ -0,0 +1,41 @@ +import moment from 'moment' +import { sort } from '@/store/storeHelper' + +global.moment = moment + +const tasks = [ + { + id: 1, + due: '20191119T183901' + }, + { + id: 2, + due: '20181119T183901' + }, + { + id: 3, + due: null + }, + { + id: 4, + due: '20151119T183901' + }, +] + +describe('storeHelper', () => { + 'use strict' + + it('Tests descending sort by due date.', () => { + const clonedTasks = tasks.slice(0) + const expectedTasks = [tasks[3], tasks[1], tasks[0], tasks[2]] + const receivedTasks = sort(clonedTasks, 'due', 0) + expect(receivedTasks).toEqual(expectedTasks) + }) + + it('Tests ascending sort by due date.', () => { + const clonedTasks = tasks.slice(0) + const expectedTasks = [tasks[2], tasks[0], tasks[1], tasks[3]] + const receivedTasks = sort(clonedTasks, 'due', 1) + expect(receivedTasks).toEqual(expectedTasks) + }) +})