1
0
mirror of https://github.com/laurent22/joplin.git synced 2024-12-12 08:54:00 +02:00
joplin/packages/app-cli/tests/timeUtils.js
2021-01-23 15:51:19 +00:00

63 lines
2.3 KiB
JavaScript

/* eslint-disable no-unused-vars */
const time = require('@joplin/lib/time').default;
const { fileContentEqual, setupDatabase, setupDatabaseAndSynchronizer, db, synchronizer, fileApi, sleep, clearDatabase, switchClient, syncTargetId, objectsEqual, checkThrowAsync } = require('./test-utils.js');
const timeUtils = require('@joplin/lib/time');
describe('timeUtils', function() {
beforeEach(async (done) => {
done();
});
it('should go back in time', (async () => {
let startDate = new Date('3 Aug 2020');
let endDate = new Date('2 Aug 2020');
expect(time.goBackInTime(startDate, 1, 'day')).toBe(endDate.getTime().toString());
// We're always subtracting time from the beginning of the current period.
startDate = new Date('3 Aug 2020 07:30:20');
expect(time.goBackInTime(startDate, 1, 'day')).toBe(endDate.getTime().toString());
// Note: this test randomly fails - https://github.com/laurent22/joplin/issues/3722
// startDate = new Date('11 Aug 2020');
// endDate = new Date('9 Aug 2020'); // week start;
// expect(time.goBackInTime(startDate, 0, 'week')).toBe(endDate.getTime().toString());
startDate = new Date('02 Feb 2020');
endDate = new Date('01 Jan 2020');
expect(time.goBackInTime(startDate, 1, 'month')).toBe(endDate.getTime().toString());
startDate = new Date('19 September 2020');
endDate = new Date('01 Jan 1997');
expect(time.goBackInTime(startDate, 23, 'year')).toBe(endDate.getTime().toString());
}));
it('should go forward in time', (async () => {
let startDate = new Date('2 Aug 2020');
let endDate = new Date('3 Aug 2020');
expect(time.goForwardInTime(startDate, 1, 'day')).toBe(endDate.getTime().toString());
startDate = new Date('2 Aug 2020 07:30:20');
expect(time.goForwardInTime(startDate, 1, 'day')).toBe(endDate.getTime().toString());
// startDate = new Date('9 Aug 2020');
// endDate = new Date('9 Aug 2020'); // week start;
// expect(time.goForwardInTime(startDate, 0, 'week')).toBe(endDate.getTime().toString());
startDate = new Date('02 Jan 2020');
endDate = new Date('01 Feb 2020');
expect(time.goForwardInTime(startDate, 1, 'month')).toBe(endDate.getTime().toString());
startDate = new Date('19 September 1997');
endDate = new Date('01 Jan 2020');
expect(time.goForwardInTime(startDate, 23, 'year')).toBe(endDate.getTime().toString());
}));
});