Files
directus/packages/utils/shared/adjust-date.test.ts
Rijk van Zanten c48309ab68 Last eslint tweak (#18198)
* Should be there now

* Format
2023-04-14 17:40:50 -04:00

51 lines
1.8 KiB
TypeScript

import { describe, expect, it } from 'vitest';
import { adjustDate } from './adjust-date.js';
describe('Adjust a given date by a given change in duration.', () => {
const date = new Date('2021-09-20T21:06:51.517Z');
it('returns undefined when the adjustment isnt in a supported format', () => {
expect(adjustDate(date, '-ms1')).toBe(undefined);
});
it('subtracts a year from the date', () => {
const adjustedDate = new Date('2020-09-20T21:06:51.517Z');
expect(adjustDate(date, '-1.0y')).toStrictEqual(adjustedDate);
});
it('subtracts a month from the date', () => {
const adjustedDate = new Date('2021-08-20T21:06:51.517Z');
expect(adjustDate(date, '-1.0mo')).toStrictEqual(adjustedDate);
});
it('subtracts a week from the date', () => {
const adjustedDate = new Date('2021-09-13T21:06:51.517Z');
expect(adjustDate(date, '-1.0weeks')).toStrictEqual(adjustedDate);
});
it('subtracts a day from the date', () => {
const adjustedDate = new Date('2021-09-19T21:06:51.517Z');
expect(adjustDate(date, '-1.0')).toStrictEqual(adjustedDate);
});
it('subtracts an hour from the date', () => {
const adjustedDate = new Date('2021-09-20T20:06:51.517Z');
expect(adjustDate(date, '-1.0h')).toStrictEqual(adjustedDate);
});
it('subtracts a minute from the date', () => {
const adjustedDate = new Date('2021-09-20T21:05:51.517Z');
expect(adjustDate(date, '-1.0minutes')).toStrictEqual(adjustedDate);
});
it('subtracts a second from the date', () => {
const adjustedDate = new Date('2021-09-20T21:06:50.517Z');
expect(adjustDate(date, '-1.0secs')).toStrictEqual(adjustedDate);
});
it('subtracts a millisecond from the date', () => {
const adjustedDate = new Date('2021-09-20T21:06:51.516Z');
expect(adjustDate(date, '-1.0ms')).toStrictEqual(adjustedDate);
});
});