@checkdigit/time 4.0.0-PR.18-81a3 → 4.0.0-PR.18-e0fa
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +0 -2
- package/package.json +1 -1
- package/src/date-fns/_lib/addLeadingZeros/test.mts +0 -12
- package/src/date-fns/_lib/getRoundingMethod/test.mts +0 -50
- package/src/date-fns/_lib/getTimezoneOffsetInMilliseconds/test.mts +0 -25
- package/src/date-fns/add/test.mts +0 -95
- package/src/date-fns/addBusinessDays/test.mts +0 -78
- package/src/date-fns/addDays/test.mts +0 -90
- package/src/date-fns/addHours/test.mts +0 -30
- package/src/date-fns/addISOWeekYears/test.mts +0 -41
- package/src/date-fns/addMilliseconds/test.mts +0 -30
- package/src/date-fns/addMinutes/test.mts +0 -30
- package/src/date-fns/addMonths/test.mts +0 -123
- package/src/date-fns/addQuarters/test.mts +0 -47
- package/src/date-fns/addSeconds/test.mts +0 -30
- package/src/date-fns/addWeeks/test.mts +0 -30
- package/src/date-fns/addYears/test.mts +0 -46
- package/src/date-fns/areIntervalsOverlapping/test.mts +0 -231
- package/src/date-fns/clamp/test.mts +0 -36
- package/src/date-fns/closestIndexTo/test.mts +0 -51
- package/src/date-fns/closestTo/test.mts +0 -49
- package/src/date-fns/compareAsc/test.mts +0 -58
- package/src/date-fns/compareDesc/test.mts +0 -58
- package/src/date-fns/constructFrom/test.mts +0 -47
- package/src/date-fns/constructNow/test.mts +0 -37
- package/src/date-fns/daysToWeeks/test.mts +0 -36
- package/src/date-fns/differenceInBusinessDays/test.mts +0 -102
- package/src/date-fns/differenceInCalendarDays/test.mts +0 -206
- package/src/date-fns/differenceInCalendarISOWeekYears/test.mts +0 -93
- package/src/date-fns/differenceInCalendarISOWeeks/test.mts +0 -89
- package/src/date-fns/differenceInCalendarMonths/test.mts +0 -82
- package/src/date-fns/differenceInCalendarQuarters/test.mts +0 -82
- package/src/date-fns/differenceInCalendarWeeks/test.mts +0 -136
- package/src/date-fns/differenceInCalendarYears/test.mts +0 -82
- package/src/date-fns/differenceInDays/test.mts +0 -175
- package/src/date-fns/differenceInHours/test.mts +0 -122
- package/src/date-fns/differenceInISOWeekYears/test.mts +0 -93
- package/src/date-fns/differenceInMilliseconds/test.mts +0 -53
- package/src/date-fns/differenceInMinutes/test.mts +0 -123
- package/src/date-fns/differenceInMonths/test.mts +0 -121
- package/src/date-fns/differenceInQuarters/test.mts +0 -109
- package/src/date-fns/differenceInSeconds/test.mts +0 -144
- package/src/date-fns/differenceInWeeks/test.mts +0 -111
- package/src/date-fns/differenceInYears/test.mts +0 -97
- package/src/date-fns/eachDayOfInterval/test.mts +0 -164
- package/src/date-fns/eachHourOfInterval/test.mts +0 -154
- package/src/date-fns/eachMinuteOfInterval/test.mts +0 -159
- package/src/date-fns/eachMonthOfInterval/test.mts +0 -151
- package/src/date-fns/eachQuarterOfInterval/test.mts +0 -136
- package/src/date-fns/eachWeekOfInterval/test.mts +0 -177
- package/src/date-fns/eachWeekendOfInterval/test.mts +0 -67
- package/src/date-fns/eachWeekendOfMonth/test.mts +0 -23
- package/src/date-fns/eachWeekendOfYear/test.mts +0 -18
- package/src/date-fns/eachYearOfInterval/test.mts +0 -136
- package/src/date-fns/endOfDay/test.mts +0 -27
- package/src/date-fns/endOfDecade/test.mts +0 -32
- package/src/date-fns/endOfHour/test.mts +0 -26
- package/src/date-fns/endOfISOWeek/test.mts +0 -27
- package/src/date-fns/endOfISOWeekYear/test.mts +0 -36
- package/src/date-fns/endOfMinute/test.mts +0 -26
- package/src/date-fns/endOfMonth/test.mts +0 -41
- package/src/date-fns/endOfQuarter/test.mts +0 -27
- package/src/date-fns/endOfSecond/test.mts +0 -26
- package/src/date-fns/endOfToday/test.mts +0 -19
- package/src/date-fns/endOfTomorrow/test.mts +0 -29
- package/src/date-fns/endOfWeek/test.mts +0 -86
- package/src/date-fns/endOfYear/test.mts +0 -27
- package/src/date-fns/endOfYesterday/test.mts +0 -29
- package/src/date-fns/format/test.mts +0 -909
- package/src/date-fns/formatDistance/test.mts +0 -189
- package/src/date-fns/formatDistanceStrict/test.mts +0 -329
- package/src/date-fns/formatDistanceToNow/test.mts +0 -196
- package/src/date-fns/formatDistanceToNowStrict/test.mts +0 -293
- package/src/date-fns/formatDuration/test.mts +0 -74
- package/src/date-fns/formatISO/test.mts +0 -55
- package/src/date-fns/formatISO9075/test.mts +0 -35
- package/src/date-fns/formatISODuration/test.mts +0 -75
- package/src/date-fns/formatRFC3339/test.mts +0 -41
- package/src/date-fns/formatRFC7231/test.mts +0 -18
- package/src/date-fns/formatRelative/test.mts +0 -92
- package/src/date-fns/fp/_lib/convertToFP/test.mts +0 -114
- package/src/date-fns/fromUnixTime/test.mts +0 -14
- package/src/date-fns/getDate/test.mts +0 -19
- package/src/date-fns/getDay/test.mts +0 -19
- package/src/date-fns/getDayOfYear/test.mts +0 -27
- package/src/date-fns/getDaysInMonth/test.mts +0 -33
- package/src/date-fns/getDaysInYear/test.mts +0 -35
- package/src/date-fns/getDecade/test.mts +0 -24
- package/src/date-fns/getDefaultOptions/test.mts +0 -58
- package/src/date-fns/getHours/test.mts +0 -19
- package/src/date-fns/getISODay/test.mts +0 -24
- package/src/date-fns/getISOWeek/test.mts +0 -54
- package/src/date-fns/getISOWeekYear/test.mts +0 -27
- package/src/date-fns/getISOWeeksInYear/test.mts +0 -37
- package/src/date-fns/getMilliseconds/test.mts +0 -19
- package/src/date-fns/getMinutes/test.mts +0 -19
- package/src/date-fns/getMonth/test.mts +0 -19
- package/src/date-fns/getOverlappingDaysInIntervals/test.mts +0 -243
- package/src/date-fns/getQuarter/test.mts +0 -19
- package/src/date-fns/getSeconds/test.mts +0 -19
- package/src/date-fns/getTime/test.mts +0 -21
- package/src/date-fns/getUnixTime/test.mts +0 -26
- package/src/date-fns/getWeek/test.mts +0 -56
- package/src/date-fns/getWeekOfMonth/test.mts +0 -75
- package/src/date-fns/getWeekYear/test.mts +0 -49
- package/src/date-fns/getWeeksInMonth/test.mts +0 -51
- package/src/date-fns/getYear/test.mts +0 -19
- package/src/date-fns/hoursToMilliseconds/test.mts +0 -23
- package/src/date-fns/hoursToMinutes/test.mts +0 -25
- package/src/date-fns/hoursToSeconds/test.mts +0 -25
- package/src/date-fns/interval/test.mts +0 -42
- package/src/date-fns/intervalToDuration/test.mts +0 -235
- package/src/date-fns/intlFormat/test.mts +0 -88
- package/src/date-fns/intlFormatDistance/test.mts +0 -588
- package/src/date-fns/isAfter/test.mts +0 -39
- package/src/date-fns/isBefore/test.mts +0 -39
- package/src/date-fns/isDate/test.mts +0 -72
- package/src/date-fns/isEqual/test.mts +0 -34
- package/src/date-fns/isExists/test.mts +0 -14
- package/src/date-fns/isFirstDayOfMonth/test.mts +0 -25
- package/src/date-fns/isFriday/test.mts +0 -24
- package/src/date-fns/isFuture/test.mts +0 -34
- package/src/date-fns/isLastDayOfMonth/test.mts +0 -25
- package/src/date-fns/isLeapYear/test.mts +0 -35
- package/src/date-fns/isMatch/test.mts +0 -27
- package/src/date-fns/isMonday/test.mts +0 -24
- package/src/date-fns/isPast/test.mts +0 -34
- package/src/date-fns/isSameDay/test.mts +0 -37
- package/src/date-fns/isSameHour/test.mts +0 -37
- package/src/date-fns/isSameISOWeek/test.mts +0 -34
- package/src/date-fns/isSameISOWeekYear/test.mts +0 -48
- package/src/date-fns/isSameMinute/test.mts +0 -37
- package/src/date-fns/isSameMonth/test.mts +0 -34
- package/src/date-fns/isSameQuarter/test.mts +0 -34
- package/src/date-fns/isSameSecond/test.mts +0 -43
- package/src/date-fns/isSameWeek/test.mts +0 -58
- package/src/date-fns/isSameYear/test.mts +0 -34
- package/src/date-fns/isSaturday/test.mts +0 -24
- package/src/date-fns/isSunday/test.mts +0 -24
- package/src/date-fns/isThisHour/test.mts +0 -34
- package/src/date-fns/isThisISOWeek/test.mts +0 -34
- package/src/date-fns/isThisMinute/test.mts +0 -34
- package/src/date-fns/isThisMonth/test.mts +0 -34
- package/src/date-fns/isThisQuarter/test.mts +0 -34
- package/src/date-fns/isThisSecond/test.mts +0 -34
- package/src/date-fns/isThisWeek/test.mts +0 -39
- package/src/date-fns/isThisYear/test.mts +0 -34
- package/src/date-fns/isThursday/test.mts +0 -24
- package/src/date-fns/isToday/test.mts +0 -34
- package/src/date-fns/isTomorrow/test.mts +0 -34
- package/src/date-fns/isTuesday/test.mts +0 -24
- package/src/date-fns/isValid/test.mts +0 -24
- package/src/date-fns/isWednesday/test.mts +0 -24
- package/src/date-fns/isWeekend/test.mts +0 -24
- package/src/date-fns/isWithinInterval/test.mts +0 -92
- package/src/date-fns/isYesterday/test.mts +0 -34
- package/src/date-fns/lastDayOfDecade/test.mts +0 -32
- package/src/date-fns/lastDayOfISOWeek/test.mts +0 -27
- package/src/date-fns/lastDayOfISOWeekYear/test.mts +0 -36
- package/src/date-fns/lastDayOfMonth/test.mts +0 -41
- package/src/date-fns/lastDayOfQuarter/test.mts +0 -27
- package/src/date-fns/lastDayOfWeek/test.mts +0 -86
- package/src/date-fns/lastDayOfYear/test.mts +0 -27
- package/src/date-fns/lightFormat/test.mts +0 -126
- package/src/date-fns/max/test.mts +0 -34
- package/src/date-fns/milliseconds/test.mts +0 -62
- package/src/date-fns/millisecondsToHours/test.mts +0 -24
- package/src/date-fns/millisecondsToMinutes/test.mts +0 -24
- package/src/date-fns/millisecondsToSeconds/test.mts +0 -24
- package/src/date-fns/min/test.mts +0 -34
- package/src/date-fns/minutesToHours/test.mts +0 -24
- package/src/date-fns/minutesToMilliseconds/test.mts +0 -23
- package/src/date-fns/minutesToSeconds/test.mts +0 -23
- package/src/date-fns/monthsToQuarters/test.mts +0 -24
- package/src/date-fns/monthsToYears/test.mts +0 -24
- package/src/date-fns/nextDay/test.mts +0 -44
- package/src/date-fns/nextFriday/test.mts +0 -24
- package/src/date-fns/nextMonday/test.mts +0 -24
- package/src/date-fns/nextSaturday/test.mts +0 -24
- package/src/date-fns/nextSunday/test.mts +0 -24
- package/src/date-fns/nextThursday/test.mts +0 -24
- package/src/date-fns/nextTuesday/test.mts +0 -23
- package/src/date-fns/nextWednesday/test.mts +0 -24
- package/src/date-fns/parse/test.mts +0 -2202
- package/src/date-fns/parseISO/test.mts +0 -362
- package/src/date-fns/parseJSON/test.mts +0 -129
- package/src/date-fns/previousDay/test.mts +0 -42
- package/src/date-fns/previousFriday/test.mts +0 -22
- package/src/date-fns/previousMonday/test.mts +0 -22
- package/src/date-fns/previousSaturday/test.mts +0 -22
- package/src/date-fns/previousSunday/test.mts +0 -22
- package/src/date-fns/previousThursday/test.mts +0 -22
- package/src/date-fns/previousTuesday/test.mts +0 -22
- package/src/date-fns/previousWednesday/test.mts +0 -22
- package/src/date-fns/quartersToMonths/test.mts +0 -24
- package/src/date-fns/quartersToYears/test.mts +0 -24
- package/src/date-fns/roundToNearestHours/test.mts +0 -200
- package/src/date-fns/roundToNearestMinutes/test.mts +0 -208
- package/src/date-fns/secondsToHours/test.mts +0 -24
- package/src/date-fns/secondsToMilliseconds/test.mts +0 -14
- package/src/date-fns/secondsToMinutes/test.mts +0 -24
- package/src/date-fns/set/test.mts +0 -121
- package/src/date-fns/setDate/test.mts +0 -30
- package/src/date-fns/setDay/test.mts +0 -112
- package/src/date-fns/setDayOfYear/test.mts +0 -30
- package/src/date-fns/setDefaultOptions/test.mts +0 -498
- package/src/date-fns/setHours/test.mts +0 -30
- package/src/date-fns/setISODay/test.mts +0 -59
- package/src/date-fns/setISOWeek/test.mts +0 -41
- package/src/date-fns/setISOWeekYear/test.mts +0 -50
- package/src/date-fns/setMilliseconds/test.mts +0 -30
- package/src/date-fns/setMinutes/test.mts +0 -30
- package/src/date-fns/setMonth/test.mts +0 -46
- package/src/date-fns/setQuarter/test.mts +0 -46
- package/src/date-fns/setSeconds/test.mts +0 -30
- package/src/date-fns/setWeek/test.mts +0 -63
- package/src/date-fns/setWeekYear/test.mts +0 -72
- package/src/date-fns/setYear/test.mts +0 -30
- package/src/date-fns/startOfDay/test.mts +0 -27
- package/src/date-fns/startOfDecade/test.mts +0 -32
- package/src/date-fns/startOfHour/test.mts +0 -27
- package/src/date-fns/startOfISOWeek/test.mts +0 -27
- package/src/date-fns/startOfISOWeekYear/test.mts +0 -41
- package/src/date-fns/startOfMinute/test.mts +0 -27
- package/src/date-fns/startOfMonth/test.mts +0 -27
- package/src/date-fns/startOfQuarter/test.mts +0 -27
- package/src/date-fns/startOfSecond/test.mts +0 -27
- package/src/date-fns/startOfToday/test.mts +0 -19
- package/src/date-fns/startOfTomorrow/test.mts +0 -29
- package/src/date-fns/startOfWeek/test.mts +0 -86
- package/src/date-fns/startOfWeekYear/test.mts +0 -58
- package/src/date-fns/startOfYear/test.mts +0 -38
- package/src/date-fns/startOfYesterday/test.mts +0 -29
- package/src/date-fns/sub/test.mts +0 -83
- package/src/date-fns/subBusinessDays/test.mts +0 -40
- package/src/date-fns/subDays/test.mts +0 -30
- package/src/date-fns/subHours/test.mts +0 -30
- package/src/date-fns/subISOWeekYears/test.mts +0 -41
- package/src/date-fns/subMilliseconds/test.mts +0 -30
- package/src/date-fns/subMinutes/test.mts +0 -30
- package/src/date-fns/subMonths/test.mts +0 -47
- package/src/date-fns/subQuarters/test.mts +0 -47
- package/src/date-fns/subSeconds/test.mts +0 -30
- package/src/date-fns/subWeeks/test.mts +0 -30
- package/src/date-fns/subYears/test.mts +0 -46
- package/src/date-fns/toDate/test.mts +0 -35
- package/src/date-fns/weeksToDays/test.mts +0 -24
- package/src/date-fns/yearsToDays/test.mts +0 -24
- package/src/date-fns/yearsToMonths/test.mts +0 -24
- package/src/date-fns/yearsToQuarters/test.mts +0 -24
|
@@ -1,362 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from 'vitest';
|
|
2
|
-
import { parseISO } from './index';
|
|
3
|
-
|
|
4
|
-
describe('parseISO', () => {
|
|
5
|
-
describe('string argument', () => {
|
|
6
|
-
describe('centuries', () => {
|
|
7
|
-
it('parses YY', () => {
|
|
8
|
-
const result = parseISO('20');
|
|
9
|
-
expect(result).toEqual(new Date(2000, 0 /* Jan */, 1));
|
|
10
|
-
});
|
|
11
|
-
});
|
|
12
|
-
|
|
13
|
-
describe('years', () => {
|
|
14
|
-
it('parses YYYY', () => {
|
|
15
|
-
const result = parseISO('2014');
|
|
16
|
-
expect(result).toEqual(new Date(2014, 0 /* Jan */, 1));
|
|
17
|
-
});
|
|
18
|
-
});
|
|
19
|
-
|
|
20
|
-
describe('months', () => {
|
|
21
|
-
it('parses YYYY-MM', () => {
|
|
22
|
-
const result = parseISO('2014-02');
|
|
23
|
-
expect(result).toEqual(new Date(2014, 1 /* Feb */, 1));
|
|
24
|
-
});
|
|
25
|
-
});
|
|
26
|
-
|
|
27
|
-
describe('weeks', () => {
|
|
28
|
-
it('parses YYYY-Www', () => {
|
|
29
|
-
const result = parseISO('2014-W02');
|
|
30
|
-
expect(result).toEqual(new Date(2014, 0 /* Jan */, 6));
|
|
31
|
-
});
|
|
32
|
-
|
|
33
|
-
it('parses YYYYWww', () => {
|
|
34
|
-
const result = parseISO('2014W02');
|
|
35
|
-
expect(result).toEqual(new Date(2014, 0 /* Jan */, 6));
|
|
36
|
-
});
|
|
37
|
-
});
|
|
38
|
-
|
|
39
|
-
describe('calendar dates', () => {
|
|
40
|
-
it('parses YYYY-MM-DD', () => {
|
|
41
|
-
const result = parseISO('2014-02-11');
|
|
42
|
-
expect(result).toEqual(new Date(2014, 1, /* Feb */ 11));
|
|
43
|
-
});
|
|
44
|
-
|
|
45
|
-
it('parses YYYYMMDD', () => {
|
|
46
|
-
const result = parseISO('20140211');
|
|
47
|
-
expect(result).toEqual(new Date(2014, 1 /* Feb */, 11));
|
|
48
|
-
});
|
|
49
|
-
});
|
|
50
|
-
|
|
51
|
-
describe('week dates', () => {
|
|
52
|
-
it('parses YYYY-Www-D', () => {
|
|
53
|
-
const result = parseISO('2014-W02-7');
|
|
54
|
-
expect(result).toEqual(new Date(2014, 0 /* Jan */, 12));
|
|
55
|
-
});
|
|
56
|
-
|
|
57
|
-
it('parses YYYYWwwD', () => {
|
|
58
|
-
const result = parseISO('2014W027');
|
|
59
|
-
expect(result).toEqual(new Date(2014, 0 /* Jan */, 12));
|
|
60
|
-
});
|
|
61
|
-
|
|
62
|
-
it('correctly handles years in which 4 January is Sunday', () => {
|
|
63
|
-
const result = parseISO('2009-W01-1');
|
|
64
|
-
expect(result).toEqual(new Date(2008, 11 /* Dec */, 29));
|
|
65
|
-
});
|
|
66
|
-
});
|
|
67
|
-
|
|
68
|
-
describe('ordinal dates', () => {
|
|
69
|
-
it('parses YYYY-DDD', () => {
|
|
70
|
-
const result = parseISO('2014-026');
|
|
71
|
-
expect(result).toEqual(new Date(2014, 0 /* Jan */, 26));
|
|
72
|
-
});
|
|
73
|
-
|
|
74
|
-
it('parses YYYYDDD', () => {
|
|
75
|
-
const result = parseISO('2014026');
|
|
76
|
-
expect(result).toEqual(new Date(2014, 0 /* Jan */, 26));
|
|
77
|
-
});
|
|
78
|
-
});
|
|
79
|
-
|
|
80
|
-
describe('date and time combined', () => {
|
|
81
|
-
it('parses YYYY-MM-DDThh:mm', () => {
|
|
82
|
-
const result = parseISO('2014-02-11T11:30');
|
|
83
|
-
expect(result).toEqual(new Date(2014, 1 /* Feb */, 11, 11, 30));
|
|
84
|
-
});
|
|
85
|
-
|
|
86
|
-
it('parses YYYY-MM-DDThhmm', () => {
|
|
87
|
-
const result = parseISO('2014-02-11T1130');
|
|
88
|
-
expect(result).toEqual(new Date(2014, 1 /* Feb */, 11, 11, 30));
|
|
89
|
-
});
|
|
90
|
-
});
|
|
91
|
-
|
|
92
|
-
describe('extended century representation', () => {
|
|
93
|
-
it('parses century 101 BC - 2 BC', () => {
|
|
94
|
-
const result = parseISO('-0001');
|
|
95
|
-
const date = new Date(0);
|
|
96
|
-
date.setFullYear(-100, 0 /* Jan */, 1);
|
|
97
|
-
date.setHours(0, 0, 0, 0);
|
|
98
|
-
expect(result).toEqual(date);
|
|
99
|
-
});
|
|
100
|
-
|
|
101
|
-
it('parses century 1 BC - 99 AD', () => {
|
|
102
|
-
const result = parseISO('00');
|
|
103
|
-
const date = new Date(0);
|
|
104
|
-
date.setFullYear(0, 0 /* Jan */, 1);
|
|
105
|
-
date.setHours(0, 0, 0, 0);
|
|
106
|
-
expect(result).toEqual(date);
|
|
107
|
-
});
|
|
108
|
-
|
|
109
|
-
it('parses centuries after 9999 AD', () => {
|
|
110
|
-
const result = parseISO('+0123');
|
|
111
|
-
expect(result).toEqual(new Date(12300, 0 /* Jan */, 1));
|
|
112
|
-
});
|
|
113
|
-
|
|
114
|
-
it('allows to specify the number of additional digits', () => {
|
|
115
|
-
const result = parseISO('-20', { additionalDigits: 0 });
|
|
116
|
-
const date = new Date(0);
|
|
117
|
-
date.setFullYear(-2000, 0 /* Jan */, 1);
|
|
118
|
-
date.setHours(0, 0, 0, 0);
|
|
119
|
-
expect(result).toEqual(date);
|
|
120
|
-
});
|
|
121
|
-
});
|
|
122
|
-
|
|
123
|
-
describe('extended year representation', () => {
|
|
124
|
-
it('correctly parses years from 1 AD to 99 AD', () => {
|
|
125
|
-
const result = parseISO('0095-07-02');
|
|
126
|
-
const date = new Date(0);
|
|
127
|
-
date.setFullYear(95, 6 /* Jul */, 2);
|
|
128
|
-
date.setHours(0, 0, 0, 0);
|
|
129
|
-
expect(result).toEqual(date);
|
|
130
|
-
});
|
|
131
|
-
|
|
132
|
-
it('parses years after 9999 AD', () => {
|
|
133
|
-
const result = parseISO('+012345-07-02');
|
|
134
|
-
expect(result).toEqual(new Date(12345, 6 /* Jul */, 2));
|
|
135
|
-
});
|
|
136
|
-
|
|
137
|
-
it('allows to specify the number of additional digits', () => {
|
|
138
|
-
const result = parseISO('+12340702', { additionalDigits: 0 });
|
|
139
|
-
expect(result).toEqual(new Date(1234, 6 /* Jul */, 2));
|
|
140
|
-
});
|
|
141
|
-
|
|
142
|
-
it('parses year 1 BC', () => {
|
|
143
|
-
const result = parseISO('0000-07-02');
|
|
144
|
-
const date = new Date(0);
|
|
145
|
-
date.setFullYear(0, 6 /* Jul */, 2);
|
|
146
|
-
date.setHours(0, 0, 0, 0);
|
|
147
|
-
expect(result).toEqual(date);
|
|
148
|
-
});
|
|
149
|
-
|
|
150
|
-
it('parses years less than 1 BC', () => {
|
|
151
|
-
const result = parseISO('-000001-07-02');
|
|
152
|
-
const date = new Date(0);
|
|
153
|
-
date.setFullYear(-1, 6 /* Jul */, 2);
|
|
154
|
-
date.setHours(0, 0, 0, 0);
|
|
155
|
-
expect(result).toEqual(date);
|
|
156
|
-
});
|
|
157
|
-
});
|
|
158
|
-
|
|
159
|
-
describe('float time', () => {
|
|
160
|
-
it('parses float hours', () => {
|
|
161
|
-
const result = parseISO('2014-02-11T11.5');
|
|
162
|
-
expect(result).toEqual(new Date(2014, 1 /* Feb */, 11, 11, 30));
|
|
163
|
-
});
|
|
164
|
-
|
|
165
|
-
it('parses float minutes', () => {
|
|
166
|
-
const result = parseISO('2014-02-11T11:30.5');
|
|
167
|
-
expect(result).toEqual(new Date(2014, 1 /* Feb */, 11, 11, 30, 30));
|
|
168
|
-
});
|
|
169
|
-
|
|
170
|
-
it('parses float seconds', () => {
|
|
171
|
-
const result = parseISO('2014-02-11T11:30:30.768');
|
|
172
|
-
expect(result).toEqual(new Date(2014, 1 /* Feb */, 11, 11, 30, 30, 768));
|
|
173
|
-
});
|
|
174
|
-
|
|
175
|
-
it('parses , as decimal mark', () => {
|
|
176
|
-
const result = parseISO('2014-02-11T11,5');
|
|
177
|
-
expect(result).toEqual(new Date(2014, 1 /* Feb */, 11, 11, 30));
|
|
178
|
-
});
|
|
179
|
-
});
|
|
180
|
-
|
|
181
|
-
describe('timezones', () => {
|
|
182
|
-
describe('when the date and the time are specified', () => {
|
|
183
|
-
it('parses Z', () => {
|
|
184
|
-
const result = parseISO('2014-10-25T06:46:20Z');
|
|
185
|
-
expect(result).toEqual(new Date('2014-10-25T13:46:20+07:00'));
|
|
186
|
-
});
|
|
187
|
-
|
|
188
|
-
it('parses ±hh:mm', () => {
|
|
189
|
-
const result = parseISO('2014-10-25T13:46:20+07:00');
|
|
190
|
-
expect(result).toEqual(new Date('2014-10-25T13:46:20+07:00'));
|
|
191
|
-
});
|
|
192
|
-
|
|
193
|
-
it('parses ±hhmm', () => {
|
|
194
|
-
const result = parseISO('2014-10-25T03:46:20-0300');
|
|
195
|
-
expect(result).toEqual(new Date('2014-10-25T13:46:20+07:00'));
|
|
196
|
-
});
|
|
197
|
-
|
|
198
|
-
it('parses ±hh', () => {
|
|
199
|
-
const result = parseISO('2014-10-25T13:46:20+07');
|
|
200
|
-
expect(result).toEqual(new Date('2014-10-25T13:46:20+07:00'));
|
|
201
|
-
});
|
|
202
|
-
});
|
|
203
|
-
describe('when the year and the month are specified', () => {
|
|
204
|
-
it('sets timezone correctly on yyyy-MMZ format', () => {
|
|
205
|
-
const result = parseISO('2012-01Z');
|
|
206
|
-
expect(result).toEqual(new Date('2012-01-01T00:00:00+00:00'));
|
|
207
|
-
});
|
|
208
|
-
});
|
|
209
|
-
});
|
|
210
|
-
|
|
211
|
-
describe('failure', () => {
|
|
212
|
-
it('returns `Invalid Date` if the string is not an ISO formatted date', () => {
|
|
213
|
-
const result = parseISO(new Date(2014, 8 /* Sep */, 1, 11).toString());
|
|
214
|
-
expect(result instanceof Date).toBe(true);
|
|
215
|
-
expect(isNaN(result.getTime())).toBe(true);
|
|
216
|
-
});
|
|
217
|
-
});
|
|
218
|
-
});
|
|
219
|
-
|
|
220
|
-
describe('validation', () => {
|
|
221
|
-
describe('months', () => {
|
|
222
|
-
it('returns `Invalid Date` for invalid month', () => {
|
|
223
|
-
const result = parseISO('2014-00');
|
|
224
|
-
expect(result instanceof Date).toBe(true);
|
|
225
|
-
expect(isNaN(result.getTime())).toBe(true);
|
|
226
|
-
});
|
|
227
|
-
});
|
|
228
|
-
|
|
229
|
-
describe('weeks', () => {
|
|
230
|
-
it('returns `Invalid Date` for invalid week', () => {
|
|
231
|
-
const result = parseISO('2014-W00');
|
|
232
|
-
expect(result instanceof Date).toBe(true);
|
|
233
|
-
expect(isNaN(result.getTime())).toBe(true);
|
|
234
|
-
});
|
|
235
|
-
|
|
236
|
-
it('returns `Invalid Date` for 54th week', () => {
|
|
237
|
-
const result = parseISO('2014-W54');
|
|
238
|
-
expect(result instanceof Date).toBe(true);
|
|
239
|
-
expect(isNaN(result.getTime())).toBe(true);
|
|
240
|
-
});
|
|
241
|
-
});
|
|
242
|
-
|
|
243
|
-
describe('calendar dates', () => {
|
|
244
|
-
it('returns `Invalid Date` for invalid day of the month', () => {
|
|
245
|
-
const result = parseISO('2012-02-30');
|
|
246
|
-
expect(result instanceof Date).toBe(true);
|
|
247
|
-
expect(isNaN(result.getTime())).toBe(true);
|
|
248
|
-
});
|
|
249
|
-
|
|
250
|
-
it('returns `Invalid Date` for 29th of February of non-leap year', () => {
|
|
251
|
-
const result = parseISO('2014-02-29');
|
|
252
|
-
expect(result instanceof Date).toBe(true);
|
|
253
|
-
expect(isNaN(result.getTime())).toBe(true);
|
|
254
|
-
});
|
|
255
|
-
|
|
256
|
-
it('parses 29th of February of leap year', () => {
|
|
257
|
-
const result = parseISO('2012-02-29');
|
|
258
|
-
expect(result).toEqual(new Date(2012, 1, /* Feb */ 29));
|
|
259
|
-
});
|
|
260
|
-
});
|
|
261
|
-
|
|
262
|
-
describe('week dates', () => {
|
|
263
|
-
it('returns `Invalid Date` for invalid day of the week', () => {
|
|
264
|
-
const result = parseISO('2014-W02-0');
|
|
265
|
-
expect(result instanceof Date).toBe(true);
|
|
266
|
-
expect(isNaN(result.getTime())).toBe(true);
|
|
267
|
-
});
|
|
268
|
-
});
|
|
269
|
-
|
|
270
|
-
describe('ordinal dates', () => {
|
|
271
|
-
it('returns `Invalid Date` for invalid day of the year', () => {
|
|
272
|
-
const result = parseISO('2012-000');
|
|
273
|
-
expect(result instanceof Date).toBe(true);
|
|
274
|
-
expect(isNaN(result.getTime())).toBe(true);
|
|
275
|
-
});
|
|
276
|
-
|
|
277
|
-
it('returns `Invalid Date` for 366th day of non-leap year', () => {
|
|
278
|
-
const result = parseISO('2014-366');
|
|
279
|
-
expect(result instanceof Date).toBe(true);
|
|
280
|
-
expect(isNaN(result.getTime())).toBe(true);
|
|
281
|
-
});
|
|
282
|
-
|
|
283
|
-
it('parses 366th day of leap year', () => {
|
|
284
|
-
const result = parseISO('2012-366');
|
|
285
|
-
expect(result).toEqual(new Date(2012, 11, /* Dec */ 31));
|
|
286
|
-
});
|
|
287
|
-
});
|
|
288
|
-
|
|
289
|
-
describe('date', () => {
|
|
290
|
-
it('returns `Invalid Date` when it contains spaces after the date', () => {
|
|
291
|
-
const result = parseISO('2014-02-11 basketball');
|
|
292
|
-
expect(result instanceof Date).toBe(true);
|
|
293
|
-
expect(isNaN(result.getTime())).toBe(true);
|
|
294
|
-
});
|
|
295
|
-
});
|
|
296
|
-
|
|
297
|
-
describe('time', () => {
|
|
298
|
-
it('parses 24:00 as midnight of the next day', () => {
|
|
299
|
-
const result = parseISO('2014-02-11T24:00');
|
|
300
|
-
expect(result).toEqual(new Date(2014, 1 /* Feb */, 12, 0, 0));
|
|
301
|
-
});
|
|
302
|
-
|
|
303
|
-
it('returns `Invalid Date` for anything after 24:00', () => {
|
|
304
|
-
const result = parseISO('2014-02-11T24:01');
|
|
305
|
-
expect(result instanceof Date).toBe(true);
|
|
306
|
-
expect(isNaN(result.getTime())).toBe(true);
|
|
307
|
-
});
|
|
308
|
-
|
|
309
|
-
it('returns `Invalid Date` for invalid hours', () => {
|
|
310
|
-
const result = parseISO('2014-02-11T25');
|
|
311
|
-
expect(result instanceof Date).toBe(true);
|
|
312
|
-
expect(isNaN(result.getTime())).toBe(true);
|
|
313
|
-
});
|
|
314
|
-
|
|
315
|
-
it('returns `Invalid Date` for invalid minutes', () => {
|
|
316
|
-
const result = parseISO('2014-02-11T21:60');
|
|
317
|
-
expect(result instanceof Date).toBe(true);
|
|
318
|
-
expect(isNaN(result.getTime())).toBe(true);
|
|
319
|
-
});
|
|
320
|
-
|
|
321
|
-
it('returns `Invalid Date` for invalid seconds', () => {
|
|
322
|
-
const result = parseISO('2014-02-11T21:59:60');
|
|
323
|
-
expect(result instanceof Date).toBe(true);
|
|
324
|
-
expect(isNaN(result.getTime())).toBe(true);
|
|
325
|
-
});
|
|
326
|
-
|
|
327
|
-
it('returns `Invalid Date` for invalid time', () => {
|
|
328
|
-
const result = parseISO('2014-02-11T21:basketball');
|
|
329
|
-
expect(result instanceof Date).toBe(true);
|
|
330
|
-
expect(isNaN(result.getTime())).toBe(true);
|
|
331
|
-
});
|
|
332
|
-
|
|
333
|
-
it('returns `Invalid Date` when it contains spaces after the time', () => {
|
|
334
|
-
const result = parseISO('2014-02-11T21:59:00 basketball');
|
|
335
|
-
expect(result instanceof Date).toBe(true);
|
|
336
|
-
expect(isNaN(result.getTime())).toBe(true);
|
|
337
|
-
});
|
|
338
|
-
});
|
|
339
|
-
|
|
340
|
-
describe('timezones', () => {
|
|
341
|
-
it('returns `Invalid Date` for invalid timezone minutes', () => {
|
|
342
|
-
const result = parseISO('2014-02-11T21:35:45+04:60');
|
|
343
|
-
expect(result instanceof Date).toBe(true);
|
|
344
|
-
expect(isNaN(result.getTime())).toBe(true);
|
|
345
|
-
});
|
|
346
|
-
});
|
|
347
|
-
});
|
|
348
|
-
|
|
349
|
-
describe('invalid argument', () => {
|
|
350
|
-
it('returns Invalid Date if argument is non-date string', () => {
|
|
351
|
-
const result = parseISO('abc');
|
|
352
|
-
expect(result instanceof Date).toBe(true);
|
|
353
|
-
expect(isNaN(result.getTime())).toBe(true);
|
|
354
|
-
});
|
|
355
|
-
|
|
356
|
-
it('returns Invalid Date if argument is non-date string containing a colon', () => {
|
|
357
|
-
const result = parseISO('00:00');
|
|
358
|
-
expect(result instanceof Date).toBe(true);
|
|
359
|
-
expect(isNaN(result.getTime())).toBe(true);
|
|
360
|
-
});
|
|
361
|
-
});
|
|
362
|
-
});
|
|
@@ -1,129 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from 'vitest';
|
|
2
|
-
import { parseJSON } from './index';
|
|
3
|
-
import { format } from '../format/index';
|
|
4
|
-
|
|
5
|
-
describe('parseJSON', () => {
|
|
6
|
-
it('parses a formatted new Date() back to UTC - issue 2149', () => {
|
|
7
|
-
const date = new Date();
|
|
8
|
-
const jsonFormat = format(date, "yyyy-MM-dd'T'HH:mm:ss.SSSxxx");
|
|
9
|
-
const parsedDate = parseJSON(jsonFormat);
|
|
10
|
-
expect(parsedDate.toISOString()).toBe(date.toISOString());
|
|
11
|
-
});
|
|
12
|
-
|
|
13
|
-
it('parses a formatted date with an hour of offset back to UTC - issue 2149', () => {
|
|
14
|
-
const date = '2021-01-09T13:18:10.873+01:00';
|
|
15
|
-
const expectedDate = new Date('2021-01-09T12:18:10.873Z');
|
|
16
|
-
const parsedDate = parseJSON(date);
|
|
17
|
-
expect(parsedDate.toISOString()).toBe(expectedDate.toISOString());
|
|
18
|
-
});
|
|
19
|
-
|
|
20
|
-
it('parses a formatted date with 2 hours of offset back to UTC - issue 2149', () => {
|
|
21
|
-
const date = '2021-01-09T13:18:10.873+02:00';
|
|
22
|
-
const expectedDate = new Date('2021-01-09T11:18:10.873Z');
|
|
23
|
-
const parsedDate = parseJSON(date);
|
|
24
|
-
expect(parsedDate.toISOString()).toBe(expectedDate.toISOString());
|
|
25
|
-
});
|
|
26
|
-
|
|
27
|
-
it('parses a formatted date with -2 hours of offset back to UTC - issue 2149', () => {
|
|
28
|
-
const date = '2021-01-09T13:18:10.873-02:00';
|
|
29
|
-
const expectedDate = new Date('2021-01-09T15:18:10.873Z');
|
|
30
|
-
const parsedDate = parseJSON(date);
|
|
31
|
-
expect(parsedDate.toISOString()).toBe(expectedDate.toISOString());
|
|
32
|
-
});
|
|
33
|
-
|
|
34
|
-
it('parses a formatted Indian Standart Time in Asia/Kolkata with +5:30 hours of offset back to UTC - issue 2149', () => {
|
|
35
|
-
const date = '2021-02-15T02:56:04.678+05:30';
|
|
36
|
-
const expectedDate = new Date('2021-02-14T21:26:04.678Z');
|
|
37
|
-
const parsedDate = parseJSON(date);
|
|
38
|
-
expect(parsedDate.toISOString()).toBe(expectedDate.toISOString());
|
|
39
|
-
});
|
|
40
|
-
|
|
41
|
-
it('parses a formatted time in Asia/Kathmandu with +5:45 hours of offset back to UTC - issue 2149', () => {
|
|
42
|
-
const date = '2021-02-15T17:45:00.900+05:45';
|
|
43
|
-
const expectedDate = new Date('2021-02-15T12:00:00.900Z');
|
|
44
|
-
const parsedDate = parseJSON(date);
|
|
45
|
-
expect(parsedDate.toISOString()).toBe(expectedDate.toISOString());
|
|
46
|
-
});
|
|
47
|
-
|
|
48
|
-
it('parses a fully formed ISO date with Z', () => {
|
|
49
|
-
const date = '2000-03-15T05:20:10.123Z';
|
|
50
|
-
const parsedDate = parseJSON(date);
|
|
51
|
-
expect(parsedDate.toISOString()).toBe(date);
|
|
52
|
-
});
|
|
53
|
-
|
|
54
|
-
it('parses a fully formed ISO date with Z without ms', () => {
|
|
55
|
-
const date = '2000-03-15T05:20:10Z';
|
|
56
|
-
const expectedDate = '2000-03-15T05:20:10.000Z';
|
|
57
|
-
const parsedDate = parseJSON(date);
|
|
58
|
-
expect(parsedDate.toISOString()).toBe(expectedDate);
|
|
59
|
-
});
|
|
60
|
-
|
|
61
|
-
it('parses a fully formed ISO date with zero offset', () => {
|
|
62
|
-
const zeroOffset = '2000-03-15T05:20:10+00:00';
|
|
63
|
-
const expectedDate = '2000-03-15T05:20:10.000Z';
|
|
64
|
-
const parsedDate = parseJSON(zeroOffset);
|
|
65
|
-
expect(parsedDate.toISOString()).toBe(expectedDate);
|
|
66
|
-
});
|
|
67
|
-
|
|
68
|
-
it('parses a fully formed ISO date with zero offset without colon', () => {
|
|
69
|
-
const zeroOffset = '2000-03-15T05:20:10+0000';
|
|
70
|
-
const expectedDate = '2000-03-15T05:20:10.000Z';
|
|
71
|
-
const parsedDate = parseJSON(zeroOffset);
|
|
72
|
-
expect(parsedDate.toISOString()).toBe(expectedDate);
|
|
73
|
-
});
|
|
74
|
-
|
|
75
|
-
it('parses a fully formed ISO date without Z', () => {
|
|
76
|
-
const date = '2000-03-15T05:20:10.123';
|
|
77
|
-
const expectedDate = '2000-03-15T05:20:10.123Z';
|
|
78
|
-
const parsedDate = parseJSON(date);
|
|
79
|
-
expect(parsedDate.toISOString()).toBe(expectedDate);
|
|
80
|
-
});
|
|
81
|
-
|
|
82
|
-
it('parses a fully formed ISO date without Z and with 6-digit millisecond part', () => {
|
|
83
|
-
const date = '2000-03-15T05:20:10.123456';
|
|
84
|
-
const expectedDate = '2000-03-15T05:20:10.123Z';
|
|
85
|
-
const parsedDate = parseJSON(date);
|
|
86
|
-
expect(parsedDate.toISOString()).toBe(expectedDate);
|
|
87
|
-
});
|
|
88
|
-
|
|
89
|
-
it('parses a fully formed ISO with 1-digit millisecond part', () => {
|
|
90
|
-
const date = '2000-03-15T05:20:10.1Z';
|
|
91
|
-
const expectedDate = '2000-03-15T05:20:10.100Z';
|
|
92
|
-
const parsedDate = parseJSON(date);
|
|
93
|
-
expect(parsedDate.toISOString()).toBe(expectedDate);
|
|
94
|
-
});
|
|
95
|
-
|
|
96
|
-
it('parses a fully formed ISO with 2-digit millisecond part', () => {
|
|
97
|
-
const date = '2000-03-15T05:20:10.12Z';
|
|
98
|
-
const expectedDate = '2000-03-15T05:20:10.120Z';
|
|
99
|
-
const parsedDate = parseJSON(date);
|
|
100
|
-
expect(parsedDate.toISOString()).toBe(expectedDate);
|
|
101
|
-
});
|
|
102
|
-
|
|
103
|
-
it('parses supported formats with a space time separator instead of a T', () => {
|
|
104
|
-
const date = '2000-03-15 05:20:10.123Z';
|
|
105
|
-
const expectedDate = '2000-03-15T05:20:10.123Z';
|
|
106
|
-
const parsedDate = parseJSON(date);
|
|
107
|
-
expect(parsedDate.toISOString()).toBe(expectedDate);
|
|
108
|
-
});
|
|
109
|
-
|
|
110
|
-
it('parses the SQL datetime format without milliseconds', () => {
|
|
111
|
-
const date = '2000-03-15 05:20:10';
|
|
112
|
-
const expectedDate = '2000-03-15T05:20:10.000Z';
|
|
113
|
-
const parsedDate = parseJSON(date);
|
|
114
|
-
expect(parsedDate.toISOString()).toBe(expectedDate);
|
|
115
|
-
});
|
|
116
|
-
|
|
117
|
-
it('parses the SQL datetime format with up to 7 millisecond digits', () => {
|
|
118
|
-
const date = '2000-03-15 05:20:10.1234567';
|
|
119
|
-
const expectedDate = '2000-03-15T05:20:10.123Z';
|
|
120
|
-
const parsedDate = parseJSON(date);
|
|
121
|
-
expect(parsedDate.toISOString()).toBe(expectedDate);
|
|
122
|
-
});
|
|
123
|
-
|
|
124
|
-
it('returns an invalid date for anything else', () => {
|
|
125
|
-
expect(parseJSON('').toString()).toBe('Invalid Date');
|
|
126
|
-
expect(parseJSON('invalid').toString()).toBe('Invalid Date');
|
|
127
|
-
expect(parseJSON('2020-10-10').toString()).toBe('Invalid Date');
|
|
128
|
-
});
|
|
129
|
-
});
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from 'vitest';
|
|
2
|
-
import { previousDay } from './index';
|
|
3
|
-
|
|
4
|
-
describe('previousDay', () => {
|
|
5
|
-
it('returns the previous Monday given various dates after the same', () => {
|
|
6
|
-
expect(previousDay(new Date(2021, 5 /* Jun */, 18), 1)).toEqual(new Date(2021, 5 /* Jun */, 14));
|
|
7
|
-
|
|
8
|
-
expect(previousDay(new Date(2021, 5 /* Jun */, 17), 1)).toEqual(new Date(2021, 5 /* Jun */, 14));
|
|
9
|
-
|
|
10
|
-
expect(previousDay(new Date(2021, 5 /* Jun */, 14), 1)).toEqual(new Date(2021, 5 /* Jun */, 7));
|
|
11
|
-
|
|
12
|
-
expect(previousDay(new Date(2021, 5 /* Jun */, 9), 1)).toEqual(new Date(2021, 5 /* Jun */, 7));
|
|
13
|
-
|
|
14
|
-
expect(previousDay(new Date(2021, 5 /* Jun */, 8), 1)).toEqual(new Date(2021, 5 /* Jun */, 7));
|
|
15
|
-
|
|
16
|
-
expect(previousDay(new Date(2021, 5 /* Jun */, 7), 1)).toEqual(new Date(2021, 4 /* May */, 31));
|
|
17
|
-
});
|
|
18
|
-
|
|
19
|
-
it('returns the previous Tuesday given the Saturday after it', () => {
|
|
20
|
-
expect(previousDay(new Date(2021, 5 /* Jun */, 26), 2)).toEqual(new Date(2021, 5 /* Jun */, 22));
|
|
21
|
-
});
|
|
22
|
-
|
|
23
|
-
it('returns the previous Wednesday given the Saturday after it', () => {
|
|
24
|
-
expect(previousDay(new Date(2021, 5 /* Jun */, 26), 3)).toEqual(new Date(2021, 5 /* Jun */, 23));
|
|
25
|
-
});
|
|
26
|
-
|
|
27
|
-
it('returns the previous Thursday given the Saturday after it', () => {
|
|
28
|
-
expect(previousDay(new Date(2021, 5 /* Jun */, 26), 4)).toEqual(new Date(2021, 5 /* Jun */, 24));
|
|
29
|
-
});
|
|
30
|
-
|
|
31
|
-
it('returns the previous Friday given the Saturday after it', () => {
|
|
32
|
-
expect(previousDay(new Date(2021, 5 /* Jun */, 26), 5)).toEqual(new Date(2021, 5 /* Jun */, 25));
|
|
33
|
-
});
|
|
34
|
-
|
|
35
|
-
it('returns the previous Saturday given the Saturday after it', () => {
|
|
36
|
-
expect(previousDay(new Date(2021, 5 /* Jun */, 26), 6)).toEqual(new Date(2021, 5 /* Jun */, 19));
|
|
37
|
-
});
|
|
38
|
-
|
|
39
|
-
it('returns the previous Sunday given the day is Sunday', () => {
|
|
40
|
-
expect(previousDay(new Date(2021, 5 /* Jun */, 27), 0)).toEqual(new Date(2021, 5 /* Jun */, 20));
|
|
41
|
-
});
|
|
42
|
-
});
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from 'vitest';
|
|
2
|
-
import { previousFriday } from './index';
|
|
3
|
-
|
|
4
|
-
describe('previousFriday', () => {
|
|
5
|
-
it('returns the previous Friday given various dates after the same', () => {
|
|
6
|
-
expect(previousFriday(new Date(2021, 5 /* Jun */, 5))).toEqual(new Date(2021, 5 /* Jun */, 4));
|
|
7
|
-
|
|
8
|
-
expect(previousFriday(new Date(2021, 5 /* Jun */, 6))).toEqual(new Date(2021, 5 /* Jun */, 4));
|
|
9
|
-
|
|
10
|
-
expect(previousFriday(new Date(2021, 5 /* Jun */, 11))).toEqual(new Date(2021, 5 /* Jun */, 4));
|
|
11
|
-
|
|
12
|
-
expect(previousFriday(new Date(2021, 5 /* Jun */, 14))).toEqual(new Date(2021, 5 /* Jun */, 11));
|
|
13
|
-
|
|
14
|
-
expect(previousFriday(new Date(2021, 5 /* Jun */, 15))).toEqual(new Date(2021, 5 /* Jun */, 11));
|
|
15
|
-
|
|
16
|
-
expect(previousFriday(new Date(2021, 5 /* Jun */, 24))).toEqual(new Date(2021, 5 /* Jun */, 18));
|
|
17
|
-
});
|
|
18
|
-
|
|
19
|
-
it('returns `Invalid Date` if the given date is invalid', () => {
|
|
20
|
-
expect(previousFriday(new Date(NaN)) instanceof Date).toBe(true);
|
|
21
|
-
});
|
|
22
|
-
});
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from 'vitest';
|
|
2
|
-
import { previousMonday } from './index';
|
|
3
|
-
|
|
4
|
-
describe('previousMonday', () => {
|
|
5
|
-
it('returns the previous Monday given various dates after the same', () => {
|
|
6
|
-
expect(previousMonday(new Date(2021, 5 /* Jun */, 5))).toEqual(new Date(2021, 4 /* May */, 31));
|
|
7
|
-
|
|
8
|
-
expect(previousMonday(new Date(2021, 5 /* Jun */, 6))).toEqual(new Date(2021, 4 /* May */, 31));
|
|
9
|
-
|
|
10
|
-
expect(previousMonday(new Date(2021, 5 /* Jun */, 7))).toEqual(new Date(2021, 4 /* May */, 31));
|
|
11
|
-
|
|
12
|
-
expect(previousMonday(new Date(2021, 5 /* Jun */, 14))).toEqual(new Date(2021, 5 /* Jun */, 7));
|
|
13
|
-
|
|
14
|
-
expect(previousMonday(new Date(2021, 5 /* Jun */, 15))).toEqual(new Date(2021, 5 /* Jun */, 14));
|
|
15
|
-
|
|
16
|
-
expect(previousMonday(new Date(2021, 5 /* Jun */, 16))).toEqual(new Date(2021, 5 /* Jun */, 14));
|
|
17
|
-
});
|
|
18
|
-
|
|
19
|
-
it('returns `Invalid Date` if the given date is invalid', () => {
|
|
20
|
-
expect(previousMonday(new Date(NaN)) instanceof Date).toBe(true);
|
|
21
|
-
});
|
|
22
|
-
});
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from 'vitest';
|
|
2
|
-
import { previousSaturday } from './index';
|
|
3
|
-
|
|
4
|
-
describe('previousSaturday', () => {
|
|
5
|
-
it('returns the previous Saturday given various dates after the same', () => {
|
|
6
|
-
expect(previousSaturday(new Date(2021, 5 /* Jun */, 7))).toEqual(new Date(2021, 5 /* Jun */, 5));
|
|
7
|
-
|
|
8
|
-
expect(previousSaturday(new Date(2021, 5 /* Jun */, 8))).toEqual(new Date(2021, 5 /* Jun */, 5));
|
|
9
|
-
|
|
10
|
-
expect(previousSaturday(new Date(2021, 5 /* Jun */, 12))).toEqual(new Date(2021, 5 /* Jun */, 5));
|
|
11
|
-
|
|
12
|
-
expect(previousSaturday(new Date(2021, 5 /* Jun */, 16))).toEqual(new Date(2021, 5 /* Jun */, 12));
|
|
13
|
-
|
|
14
|
-
expect(previousSaturday(new Date(2021, 5 /* Jun */, 17))).toEqual(new Date(2021, 5 /* Jun */, 12));
|
|
15
|
-
|
|
16
|
-
expect(previousSaturday(new Date(2021, 5 /* Jun */, 24))).toEqual(new Date(2021, 5 /* Jun */, 19));
|
|
17
|
-
});
|
|
18
|
-
|
|
19
|
-
it('returns `Invalid Date` if the given date is invalid', () => {
|
|
20
|
-
expect(previousSaturday(new Date(NaN)) instanceof Date).toBe(true);
|
|
21
|
-
});
|
|
22
|
-
});
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from 'vitest';
|
|
2
|
-
import { previousSunday } from './index';
|
|
3
|
-
|
|
4
|
-
describe('previousSunday', () => {
|
|
5
|
-
it('returns the previous Sunday given various dates after the same', () => {
|
|
6
|
-
expect(previousSunday(new Date(2021, 5 /* Jun */, 7))).toEqual(new Date(2021, 5 /* Jun */, 6));
|
|
7
|
-
|
|
8
|
-
expect(previousSunday(new Date(2021, 5 /* Jun */, 8))).toEqual(new Date(2021, 5 /* Jun */, 6));
|
|
9
|
-
|
|
10
|
-
expect(previousSunday(new Date(2021, 5 /* Jun */, 13))).toEqual(new Date(2021, 5 /* Jun */, 6));
|
|
11
|
-
|
|
12
|
-
expect(previousSunday(new Date(2021, 5 /* Jun */, 16))).toEqual(new Date(2021, 5 /* Jun */, 13));
|
|
13
|
-
|
|
14
|
-
expect(previousSunday(new Date(2021, 5 /* Jun */, 17))).toEqual(new Date(2021, 5 /* Jun */, 13));
|
|
15
|
-
|
|
16
|
-
expect(previousSunday(new Date(2021, 5 /* Jun */, 24))).toEqual(new Date(2021, 5 /* Jun */, 20));
|
|
17
|
-
});
|
|
18
|
-
|
|
19
|
-
it('returns `Invalid Date` if the given date is invalid', () => {
|
|
20
|
-
expect(previousSunday(new Date(NaN)) instanceof Date).toBe(true);
|
|
21
|
-
});
|
|
22
|
-
});
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from 'vitest';
|
|
2
|
-
import { previousThursday } from './index';
|
|
3
|
-
|
|
4
|
-
describe('previousThursday', () => {
|
|
5
|
-
it('returns the previous Thursday given various dates after the same', () => {
|
|
6
|
-
expect(previousThursday(new Date(2021, 5 /* Jun */, 5))).toEqual(new Date(2021, 5 /* Jun */, 3));
|
|
7
|
-
|
|
8
|
-
expect(previousThursday(new Date(2021, 5 /* Jun */, 6))).toEqual(new Date(2021, 5 /* Jun */, 3));
|
|
9
|
-
|
|
10
|
-
expect(previousThursday(new Date(2021, 5 /* Jun */, 10))).toEqual(new Date(2021, 5 /* Jun */, 3));
|
|
11
|
-
|
|
12
|
-
expect(previousThursday(new Date(2021, 5 /* Jun */, 14))).toEqual(new Date(2021, 5 /* Jun */, 10));
|
|
13
|
-
|
|
14
|
-
expect(previousThursday(new Date(2021, 5 /* Jun */, 15))).toEqual(new Date(2021, 5 /* Jun */, 10));
|
|
15
|
-
|
|
16
|
-
expect(previousThursday(new Date(2021, 5 /* Jun */, 24))).toEqual(new Date(2021, 5 /* Jun */, 17));
|
|
17
|
-
});
|
|
18
|
-
|
|
19
|
-
it('returns `Invalid Date` if the given date is invalid', () => {
|
|
20
|
-
expect(previousThursday(new Date(NaN)) instanceof Date).toBe(true);
|
|
21
|
-
});
|
|
22
|
-
});
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from 'vitest';
|
|
2
|
-
import { previousTuesday } from './index';
|
|
3
|
-
|
|
4
|
-
describe('previousTuesday', () => {
|
|
5
|
-
it('returns the previous Tuesday given various dates after the same', () => {
|
|
6
|
-
expect(previousTuesday(new Date(2021, 5 /* Jun */, 5))).toEqual(new Date(2021, 5 /* Jun */, 1));
|
|
7
|
-
|
|
8
|
-
expect(previousTuesday(new Date(2021, 5 /* Jun */, 6))).toEqual(new Date(2021, 5 /* Jun */, 1));
|
|
9
|
-
|
|
10
|
-
expect(previousTuesday(new Date(2021, 5 /* Jun */, 8))).toEqual(new Date(2021, 5 /* Jun */, 1));
|
|
11
|
-
|
|
12
|
-
expect(previousTuesday(new Date(2021, 5 /* Jun */, 15))).toEqual(new Date(2021, 5 /* Jun */, 8));
|
|
13
|
-
|
|
14
|
-
expect(previousTuesday(new Date(2021, 5 /* Jun */, 17))).toEqual(new Date(2021, 5 /* Jun */, 15));
|
|
15
|
-
|
|
16
|
-
expect(previousTuesday(new Date(2021, 5 /* Jun */, 18))).toEqual(new Date(2021, 5 /* Jun */, 15));
|
|
17
|
-
});
|
|
18
|
-
|
|
19
|
-
it('returns `Invalid Date` if the given date is invalid', () => {
|
|
20
|
-
expect(previousTuesday(new Date(NaN)) instanceof Date).toBe(true);
|
|
21
|
-
});
|
|
22
|
-
});
|