@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,41 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from 'vitest';
|
|
2
|
-
import { startOfISOWeekYear } from './index';
|
|
3
|
-
|
|
4
|
-
describe('startOfISOWeekYear', () => {
|
|
5
|
-
it('returns the date with the time set to 00:00:00 and the date set to the first day of an ISO year', () => {
|
|
6
|
-
const result = startOfISOWeekYear(new Date(2009, 0 /* Jan */, 1, 16, 0));
|
|
7
|
-
expect(result).toEqual(new Date(2008, 11 /* Dec */, 29, 0, 0, 0, 0));
|
|
8
|
-
});
|
|
9
|
-
|
|
10
|
-
it('accepts a timestamp', () => {
|
|
11
|
-
const result = startOfISOWeekYear(new Date(2005, 0 /* Jan */, 1, 6, 0).getTime());
|
|
12
|
-
expect(result).toEqual(new Date(2003, 11 /* Dec */, 29, 0, 0, 0, 0));
|
|
13
|
-
});
|
|
14
|
-
|
|
15
|
-
it('does not mutate the original date', () => {
|
|
16
|
-
const date = new Date(2014, 6 /* Jul */, 2);
|
|
17
|
-
startOfISOWeekYear(date);
|
|
18
|
-
expect(date).toEqual(new Date(2014, 6 /* Jul */, 2));
|
|
19
|
-
});
|
|
20
|
-
|
|
21
|
-
it('handles dates before 100 AD', () => {
|
|
22
|
-
const initialDate = new Date(0);
|
|
23
|
-
initialDate.setFullYear(9, 0 /* Jan */, 1);
|
|
24
|
-
initialDate.setHours(0, 0, 0, 0);
|
|
25
|
-
const expectedResult = new Date(0);
|
|
26
|
-
expectedResult.setFullYear(8, 11 /* Dec */, 29);
|
|
27
|
-
expectedResult.setHours(0, 0, 0, 0);
|
|
28
|
-
const result = startOfISOWeekYear(initialDate);
|
|
29
|
-
expect(result).toEqual(expectedResult);
|
|
30
|
-
});
|
|
31
|
-
|
|
32
|
-
it('correctly handles years in which 4 January is Sunday', () => {
|
|
33
|
-
const result = startOfISOWeekYear(new Date(2009, 6 /* Jul */, 2));
|
|
34
|
-
expect(result).toEqual(new Date(2008, 11 /* Dec */, 29));
|
|
35
|
-
});
|
|
36
|
-
|
|
37
|
-
it('returns `Invalid Date` if the given date is invalid', () => {
|
|
38
|
-
const result = startOfISOWeekYear(new Date(NaN));
|
|
39
|
-
expect(result instanceof Date && isNaN(result.getTime())).toBe(true);
|
|
40
|
-
});
|
|
41
|
-
});
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from 'vitest';
|
|
2
|
-
import { startOfMinute } from './index';
|
|
3
|
-
|
|
4
|
-
describe('startOfMinute', () => {
|
|
5
|
-
it('returns the date with the time set to the first millisecond of a minute', () => {
|
|
6
|
-
const date = new Date(2014, 11 /* Dec */, 1, 22, 15, 45, 400);
|
|
7
|
-
const result = startOfMinute(date);
|
|
8
|
-
expect(result).toEqual(new Date(2014, 11 /* Dec */, 1, 22, 15));
|
|
9
|
-
});
|
|
10
|
-
|
|
11
|
-
it('accepts a timestamp', () => {
|
|
12
|
-
const date = new Date(2014, 11 /* Dec */, 1, 22, 15).getTime();
|
|
13
|
-
const result = startOfMinute(date);
|
|
14
|
-
expect(result).toEqual(new Date(2014, 11 /* Dec */, 1, 22, 15));
|
|
15
|
-
});
|
|
16
|
-
|
|
17
|
-
it('does not mutate the original date', () => {
|
|
18
|
-
const date = new Date(2014, 11 /* Dec */, 1, 22, 15, 45, 400);
|
|
19
|
-
startOfMinute(date);
|
|
20
|
-
expect(date).toEqual(new Date(2014, 11 /* Dec */, 1, 22, 15, 45, 400));
|
|
21
|
-
});
|
|
22
|
-
|
|
23
|
-
it('returns `Invalid Date` if the given date is invalid', () => {
|
|
24
|
-
const result = startOfMinute(new Date(NaN));
|
|
25
|
-
expect(result instanceof Date && isNaN(result.getTime())).toBe(true);
|
|
26
|
-
});
|
|
27
|
-
});
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from 'vitest';
|
|
2
|
-
import { startOfMonth } from './index';
|
|
3
|
-
|
|
4
|
-
describe('startOfMonth', () => {
|
|
5
|
-
it('returns the date with the time set to 00:00:00 and the date set to the first day of a month', () => {
|
|
6
|
-
const date = new Date(2014, 8 /* Sep */, 2, 11, 55, 0);
|
|
7
|
-
const result = startOfMonth(date);
|
|
8
|
-
expect(result).toEqual(new Date(2014, 8 /* Sep */, 1));
|
|
9
|
-
});
|
|
10
|
-
|
|
11
|
-
it('accepts a timestamp', () => {
|
|
12
|
-
const date = new Date(2014, 8 /* Sep */, 2, 11, 55, 0).getTime();
|
|
13
|
-
const result = startOfMonth(date);
|
|
14
|
-
expect(result).toEqual(new Date(2014, 8 /* Sep */, 1));
|
|
15
|
-
});
|
|
16
|
-
|
|
17
|
-
it('does not mutate the original date', () => {
|
|
18
|
-
const date = new Date(2014, 8 /* Sep */, 2, 11, 55, 0);
|
|
19
|
-
startOfMonth(date);
|
|
20
|
-
expect(date).toEqual(new Date(2014, 8 /* Sep */, 2, 11, 55, 0));
|
|
21
|
-
});
|
|
22
|
-
|
|
23
|
-
it('returns `Invalid Date` if the given date is invalid', () => {
|
|
24
|
-
const result = startOfMonth(new Date(NaN));
|
|
25
|
-
expect(result instanceof Date && isNaN(result.getTime())).toBe(true);
|
|
26
|
-
});
|
|
27
|
-
});
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from 'vitest';
|
|
2
|
-
import { startOfQuarter } from './index';
|
|
3
|
-
|
|
4
|
-
describe('startOfQuarter', () => {
|
|
5
|
-
it('returns the date with the time set to 00:00:00 and the date set to the first day of a quarter', () => {
|
|
6
|
-
const date = new Date(2014, 8 /* Sep */, 2, 11, 55, 0);
|
|
7
|
-
const result = startOfQuarter(date);
|
|
8
|
-
expect(result).toEqual(new Date(2014, 6 /* Jul */, 1));
|
|
9
|
-
});
|
|
10
|
-
|
|
11
|
-
it('accepts a timestamp', () => {
|
|
12
|
-
const date = new Date(2014, 8 /* Sep */, 2, 11, 55, 0).getTime();
|
|
13
|
-
const result = startOfQuarter(date);
|
|
14
|
-
expect(result).toEqual(new Date(2014, 6 /* Jul */, 1));
|
|
15
|
-
});
|
|
16
|
-
|
|
17
|
-
it('does not mutate the original date', () => {
|
|
18
|
-
const date = new Date(2014, 8 /* Sep */, 2, 11, 55, 0);
|
|
19
|
-
startOfQuarter(date);
|
|
20
|
-
expect(date).toEqual(new Date(2014, 8 /* Sep */, 2, 11, 55, 0));
|
|
21
|
-
});
|
|
22
|
-
|
|
23
|
-
it('returns `Invalid Date` if the given date is invalid', () => {
|
|
24
|
-
const result = startOfQuarter(new Date(NaN));
|
|
25
|
-
expect(result instanceof Date && isNaN(result.getTime())).toBe(true);
|
|
26
|
-
});
|
|
27
|
-
});
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from 'vitest';
|
|
2
|
-
import { startOfSecond } from './index';
|
|
3
|
-
|
|
4
|
-
describe('startOfSecond', () => {
|
|
5
|
-
it('returns the date with the time set to the first millisecond of a second', () => {
|
|
6
|
-
const date = new Date(2014, 11 /* Dec */, 1, 22, 15, 45, 400);
|
|
7
|
-
const result = startOfSecond(date);
|
|
8
|
-
expect(result).toEqual(new Date(2014, 11 /* Dec */, 1, 22, 15, 45));
|
|
9
|
-
});
|
|
10
|
-
|
|
11
|
-
it('accepts a timestamp', () => {
|
|
12
|
-
const date = new Date(2014, 11 /* Dec */, 1, 22, 15, 45, 400).getTime();
|
|
13
|
-
const result = startOfSecond(date);
|
|
14
|
-
expect(result).toEqual(new Date(2014, 11 /* Dec */, 1, 22, 15, 45));
|
|
15
|
-
});
|
|
16
|
-
|
|
17
|
-
it('does not mutate the original date', () => {
|
|
18
|
-
const date = new Date(2014, 11 /* Dec */, 1, 22, 15, 45, 400);
|
|
19
|
-
startOfSecond(date);
|
|
20
|
-
expect(date).toEqual(new Date(2014, 11 /* Dec */, 1, 22, 15, 45, 400));
|
|
21
|
-
});
|
|
22
|
-
|
|
23
|
-
it('returns `Invalid Date` if the given date is invalid', () => {
|
|
24
|
-
const result = startOfSecond(new Date(NaN));
|
|
25
|
-
expect(result instanceof Date && isNaN(result.getTime())).toBe(true);
|
|
26
|
-
});
|
|
27
|
-
});
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { afterEach, beforeEach, describe, expect, it } from 'vitest';
|
|
2
|
-
import sinon from 'sinon';
|
|
3
|
-
import { startOfToday } from './index';
|
|
4
|
-
|
|
5
|
-
describe('startOfToday', () => {
|
|
6
|
-
let clock: sinon.SinonFakeTimers;
|
|
7
|
-
beforeEach(() => {
|
|
8
|
-
clock = sinon.useFakeTimers(new Date(2014, 8 /* Sep */, 25, 14, 30, 45, 500).getTime());
|
|
9
|
-
});
|
|
10
|
-
|
|
11
|
-
afterEach(() => {
|
|
12
|
-
clock.restore();
|
|
13
|
-
});
|
|
14
|
-
|
|
15
|
-
it('returns the current date with the time setted to 00:00:00', () => {
|
|
16
|
-
const result = startOfToday();
|
|
17
|
-
expect(result).toEqual(new Date(2014, 8 /* Sep */, 25));
|
|
18
|
-
});
|
|
19
|
-
});
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from 'vitest';
|
|
2
|
-
import sinon from 'sinon';
|
|
3
|
-
import { startOfTomorrow } from './index';
|
|
4
|
-
|
|
5
|
-
describe('startOfTomorrow', () => {
|
|
6
|
-
it('returns the start of tomorrow', () => {
|
|
7
|
-
const clock = sinon.useFakeTimers(new Date(2014, 8 /* Sep */, 25, 14, 30, 45, 500).getTime());
|
|
8
|
-
|
|
9
|
-
const result = startOfTomorrow();
|
|
10
|
-
expect(result).toEqual(new Date(2014, 8 /* Sep */, 26));
|
|
11
|
-
|
|
12
|
-
clock.restore();
|
|
13
|
-
});
|
|
14
|
-
|
|
15
|
-
it('handles dates before 100 AD', () => {
|
|
16
|
-
const now = new Date(0);
|
|
17
|
-
now.setFullYear(14, 8 /* Sep */, 25);
|
|
18
|
-
now.setHours(0, 0, 0, 0);
|
|
19
|
-
const clock = sinon.useFakeTimers(now.getTime());
|
|
20
|
-
|
|
21
|
-
const expectedResult = new Date(0);
|
|
22
|
-
expectedResult.setFullYear(14, 8 /* Sep */, 26);
|
|
23
|
-
expectedResult.setHours(0, 0, 0, 0);
|
|
24
|
-
const result = startOfTomorrow();
|
|
25
|
-
expect(result).toEqual(expectedResult);
|
|
26
|
-
|
|
27
|
-
clock.restore();
|
|
28
|
-
});
|
|
29
|
-
});
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from 'vitest';
|
|
2
|
-
import { startOfWeek } from './index';
|
|
3
|
-
|
|
4
|
-
describe('startOfWeek', () => {
|
|
5
|
-
it('returns the date with the time set to 00:00:00 and the date set to the first day of a week', () => {
|
|
6
|
-
const date = new Date(2014, 8 /* Sep */, 2, 11, 55, 0);
|
|
7
|
-
const result = startOfWeek(date);
|
|
8
|
-
expect(result).toEqual(new Date(2014, 7 /* Aug */, 31));
|
|
9
|
-
});
|
|
10
|
-
|
|
11
|
-
it('allows to specify which day is the first day of the week', () => {
|
|
12
|
-
const date = new Date(2014, 8 /* Sep */, 2, 11, 55, 0);
|
|
13
|
-
const result = startOfWeek(date, { weekStartsOn: 1 });
|
|
14
|
-
expect(result).toEqual(new Date(2014, 8 /* Sep */, 1));
|
|
15
|
-
});
|
|
16
|
-
|
|
17
|
-
it('allows to specify which day is the first day of the week in locale', () => {
|
|
18
|
-
const date = new Date(2014, 8 /* Sep */, 2, 11, 55, 0);
|
|
19
|
-
const result = startOfWeek(date, {
|
|
20
|
-
locale: {
|
|
21
|
-
options: { weekStartsOn: 1 },
|
|
22
|
-
},
|
|
23
|
-
});
|
|
24
|
-
expect(result).toEqual(new Date(2014, 8 /* Sep */, 1));
|
|
25
|
-
});
|
|
26
|
-
|
|
27
|
-
it('`options.weekStartsOn` overwrites the first day of the week specified in locale', () => {
|
|
28
|
-
const date = new Date(2014, 8 /* Sep */, 2, 11, 55, 0);
|
|
29
|
-
const result = startOfWeek(date, {
|
|
30
|
-
weekStartsOn: 1,
|
|
31
|
-
locale: {
|
|
32
|
-
options: { weekStartsOn: 0 },
|
|
33
|
-
},
|
|
34
|
-
});
|
|
35
|
-
expect(result).toEqual(new Date(2014, 8 /* Sep */, 1));
|
|
36
|
-
});
|
|
37
|
-
|
|
38
|
-
it('accepts a timestamp', () => {
|
|
39
|
-
const date = new Date(2014, 8 /* Sep */, 2, 11, 55, 0).getTime();
|
|
40
|
-
const result = startOfWeek(date);
|
|
41
|
-
expect(result).toEqual(new Date(2014, 7 /* Aug */, 31));
|
|
42
|
-
});
|
|
43
|
-
|
|
44
|
-
it('does not mutate the original date', () => {
|
|
45
|
-
const date = new Date(2014, 8 /* Sep */, 2, 11, 55, 0);
|
|
46
|
-
startOfWeek(date);
|
|
47
|
-
expect(date).toEqual(new Date(2014, 8 /* Sep */, 2, 11, 55, 0));
|
|
48
|
-
});
|
|
49
|
-
|
|
50
|
-
describe('edge cases', () => {
|
|
51
|
-
describe('when the given day is before the start of a week', () => {
|
|
52
|
-
it('it returns the start of a week', () => {
|
|
53
|
-
const date = new Date(2014, 9 /* Oct */, 6);
|
|
54
|
-
const result = startOfWeek(date, { weekStartsOn: 3 });
|
|
55
|
-
expect(result).toEqual(new Date(2014, 9 /* Oct */, 1));
|
|
56
|
-
});
|
|
57
|
-
});
|
|
58
|
-
|
|
59
|
-
describe('when the given day is the start of a week', () => {
|
|
60
|
-
it('it returns the start of a week', () => {
|
|
61
|
-
const date = new Date(2014, 9 /* Oct */, 8);
|
|
62
|
-
const result = startOfWeek(date, { weekStartsOn: 3 });
|
|
63
|
-
expect(result).toEqual(new Date(2014, 9 /* Oct */, 8));
|
|
64
|
-
});
|
|
65
|
-
});
|
|
66
|
-
|
|
67
|
-
describe('when the given day is after the start of a week', () => {
|
|
68
|
-
it('it returns the start of a week', () => {
|
|
69
|
-
const date = new Date(2014, 9 /* Oct */, 10);
|
|
70
|
-
const result = startOfWeek(date, { weekStartsOn: 3 });
|
|
71
|
-
expect(result).toEqual(new Date(2014, 9 /* Oct */, 8));
|
|
72
|
-
});
|
|
73
|
-
});
|
|
74
|
-
|
|
75
|
-
it('handles the week at the start of a year', () => {
|
|
76
|
-
const date = new Date(2014, 0 /* Jan */, 1);
|
|
77
|
-
const result = startOfWeek(date);
|
|
78
|
-
expect(result).toEqual(new Date(2013, 11 /* Dec */, 29));
|
|
79
|
-
});
|
|
80
|
-
});
|
|
81
|
-
|
|
82
|
-
it('returns `Invalid Date` if the given date is invalid', () => {
|
|
83
|
-
const result = startOfWeek(new Date(NaN));
|
|
84
|
-
expect(result instanceof Date && isNaN(result.getTime())).toBe(true);
|
|
85
|
-
});
|
|
86
|
-
});
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from 'vitest';
|
|
2
|
-
import { startOfWeekYear } from './index';
|
|
3
|
-
|
|
4
|
-
describe('startOfWeekYear', () => {
|
|
5
|
-
it('returns the date with the time set to 00:00:00 and the date set to the first day of a week year', () => {
|
|
6
|
-
const result = startOfWeekYear(new Date(2005, 6 /* Jul */, 2));
|
|
7
|
-
expect(result).toEqual(new Date(2004, 11 /* Dec */, 26, 0, 0, 0, 0));
|
|
8
|
-
});
|
|
9
|
-
|
|
10
|
-
it('accepts a timestamp', () => {
|
|
11
|
-
const result = startOfWeekYear(new Date(2005, 0 /* Jan */, 1, 6, 0).getTime());
|
|
12
|
-
expect(result).toEqual(new Date(2004, 11 /* Dec */, 26, 0, 0, 0, 0));
|
|
13
|
-
});
|
|
14
|
-
|
|
15
|
-
it('does not mutate the original date', () => {
|
|
16
|
-
const date = new Date(2014, 6 /* Jul */, 2);
|
|
17
|
-
startOfWeekYear(date);
|
|
18
|
-
expect(date).toEqual(new Date(2014, 6 /* Jul */, 2));
|
|
19
|
-
});
|
|
20
|
-
|
|
21
|
-
it('handles dates before 100 AD', () => {
|
|
22
|
-
const initialDate = new Date(0);
|
|
23
|
-
initialDate.setFullYear(9, 0 /* Jan */, 1);
|
|
24
|
-
initialDate.setHours(0, 0, 0, 0);
|
|
25
|
-
const expectedResult = new Date(0);
|
|
26
|
-
expectedResult.setFullYear(8, 11 /* Dec */, 28);
|
|
27
|
-
expectedResult.setHours(0, 0, 0, 0);
|
|
28
|
-
const result = startOfWeekYear(initialDate);
|
|
29
|
-
expect(result).toEqual(expectedResult);
|
|
30
|
-
});
|
|
31
|
-
|
|
32
|
-
it('returns `Invalid Date` if the given date is invalid', () => {
|
|
33
|
-
const result = startOfWeekYear(new Date(NaN));
|
|
34
|
-
expect(result instanceof Date && isNaN(result.getTime())).toBe(true);
|
|
35
|
-
});
|
|
36
|
-
|
|
37
|
-
it('allows to specify `weekStartsOn` and `firstWeekContainsDate` in locale', () => {
|
|
38
|
-
const date = new Date(2005, 6 /* Jul */, 2);
|
|
39
|
-
const result = startOfWeekYear(date, {
|
|
40
|
-
locale: {
|
|
41
|
-
options: { weekStartsOn: 1, firstWeekContainsDate: 4 },
|
|
42
|
-
},
|
|
43
|
-
});
|
|
44
|
-
expect(result).toEqual(new Date(2005, 0 /* Jan */, 3, 0, 0, 0, 0));
|
|
45
|
-
});
|
|
46
|
-
|
|
47
|
-
it('`options.weekStartsOn` overwrites the first day of the week specified in locale', () => {
|
|
48
|
-
const date = new Date(2005, 6 /* Jul */, 2);
|
|
49
|
-
const result = startOfWeekYear(date, {
|
|
50
|
-
weekStartsOn: 1,
|
|
51
|
-
firstWeekContainsDate: 4,
|
|
52
|
-
locale: {
|
|
53
|
-
options: { weekStartsOn: 0, firstWeekContainsDate: 1 },
|
|
54
|
-
},
|
|
55
|
-
});
|
|
56
|
-
expect(result).toEqual(new Date(2005, 0 /* Jan */, 3, 0, 0, 0, 0));
|
|
57
|
-
});
|
|
58
|
-
});
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from 'vitest';
|
|
2
|
-
import { startOfYear } from './index';
|
|
3
|
-
|
|
4
|
-
describe('startOfYear', () => {
|
|
5
|
-
it('returns the date with the time set to 00:00:00 and the date set to the first day of a year', () => {
|
|
6
|
-
const date = new Date(2014, 8 /* Sep */, 2, 11, 55, 0);
|
|
7
|
-
const result = startOfYear(date);
|
|
8
|
-
expect(result).toEqual(new Date(2014, 0 /* Jan */, 1, 0, 0, 0, 0));
|
|
9
|
-
});
|
|
10
|
-
|
|
11
|
-
it('accepts a timestamp', () => {
|
|
12
|
-
const date = new Date(2014, 8 /* Sep */, 2, 11, 55, 0).getTime();
|
|
13
|
-
const result = startOfYear(date);
|
|
14
|
-
expect(result).toEqual(new Date(2014, 0 /* Dec */, 1, 0, 0, 0, 0));
|
|
15
|
-
});
|
|
16
|
-
|
|
17
|
-
it('does not mutate the original date', () => {
|
|
18
|
-
const date = new Date(2014, 8 /* Sep */, 2, 11, 55, 0);
|
|
19
|
-
startOfYear(date);
|
|
20
|
-
expect(date).toEqual(new Date(2014, 8 /* Sep */, 2, 11, 55, 0));
|
|
21
|
-
});
|
|
22
|
-
|
|
23
|
-
it('handles dates before 100 AD', () => {
|
|
24
|
-
const initialDate = new Date(0);
|
|
25
|
-
initialDate.setFullYear(9, 0 /* Jan */, 5);
|
|
26
|
-
initialDate.setHours(0, 0, 0, 0);
|
|
27
|
-
const expectedResult = new Date(0);
|
|
28
|
-
expectedResult.setFullYear(9, 0 /* Jan */, 1);
|
|
29
|
-
expectedResult.setHours(0, 0, 0, 0);
|
|
30
|
-
const result = startOfYear(initialDate);
|
|
31
|
-
expect(result).toEqual(expectedResult);
|
|
32
|
-
});
|
|
33
|
-
|
|
34
|
-
it('returns `Invalid Date` if the given date is invalid', () => {
|
|
35
|
-
const result = startOfYear(new Date(NaN));
|
|
36
|
-
expect(result instanceof Date && isNaN(result.getTime())).toBe(true);
|
|
37
|
-
});
|
|
38
|
-
});
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from 'vitest';
|
|
2
|
-
import sinon from 'sinon';
|
|
3
|
-
import { startOfYesterday } from './index';
|
|
4
|
-
|
|
5
|
-
describe('startOfYesterday', () => {
|
|
6
|
-
it('returns the start of yesterday', () => {
|
|
7
|
-
const clock = sinon.useFakeTimers(new Date(2014, 8 /* Sep */, 25, 14, 30, 45, 500).getTime());
|
|
8
|
-
|
|
9
|
-
const result = startOfYesterday();
|
|
10
|
-
expect(result).toEqual(new Date(2014, 8 /* Sep */, 24));
|
|
11
|
-
|
|
12
|
-
clock.restore();
|
|
13
|
-
});
|
|
14
|
-
|
|
15
|
-
it('handles dates before 100 AD', () => {
|
|
16
|
-
const now = new Date(0);
|
|
17
|
-
now.setFullYear(14, 8 /* Sep */, 25);
|
|
18
|
-
now.setHours(0, 0, 0, 0);
|
|
19
|
-
const clock = sinon.useFakeTimers(now.getTime());
|
|
20
|
-
|
|
21
|
-
const expectedResult = new Date(0);
|
|
22
|
-
expectedResult.setFullYear(14, 8 /* Sep */, 24);
|
|
23
|
-
expectedResult.setHours(0, 0, 0, 0);
|
|
24
|
-
const result = startOfYesterday();
|
|
25
|
-
expect(result).toEqual(expectedResult);
|
|
26
|
-
|
|
27
|
-
clock.restore();
|
|
28
|
-
});
|
|
29
|
-
});
|
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from 'vitest';
|
|
2
|
-
import { sub } from './index';
|
|
3
|
-
|
|
4
|
-
describe('sub', () => {
|
|
5
|
-
it('subtracts the duration from the given date', () => {
|
|
6
|
-
const result = sub(new Date(2017, 5 /* June */, 15, 15, 29, 20), {
|
|
7
|
-
years: 2,
|
|
8
|
-
months: 9,
|
|
9
|
-
weeks: 1,
|
|
10
|
-
days: 7,
|
|
11
|
-
hours: 5,
|
|
12
|
-
minutes: 9,
|
|
13
|
-
seconds: 30,
|
|
14
|
-
});
|
|
15
|
-
expect(result).toEqual(new Date(2014, 8 /* Sep */, 1, 10, 19, 50));
|
|
16
|
-
});
|
|
17
|
-
|
|
18
|
-
it('supports an undefined value in the duration object', () => {
|
|
19
|
-
const result = sub(new Date(2017, 5 /* June */, 15, 15, 29, 20), {
|
|
20
|
-
years: undefined,
|
|
21
|
-
months: 9,
|
|
22
|
-
weeks: 1,
|
|
23
|
-
days: 7,
|
|
24
|
-
hours: 5,
|
|
25
|
-
minutes: 9,
|
|
26
|
-
seconds: 30,
|
|
27
|
-
});
|
|
28
|
-
expect(result).toEqual(new Date(2016, 8 /* Sep */, 1, 10, 19, 50));
|
|
29
|
-
});
|
|
30
|
-
|
|
31
|
-
it('returns same date object when passed empty duration values', () => {
|
|
32
|
-
const result = sub(new Date(2014, 8 /* Sep */, 1, 10).getTime(), {
|
|
33
|
-
years: undefined,
|
|
34
|
-
months: undefined,
|
|
35
|
-
weeks: undefined,
|
|
36
|
-
days: undefined,
|
|
37
|
-
hours: undefined,
|
|
38
|
-
minutes: undefined,
|
|
39
|
-
seconds: undefined,
|
|
40
|
-
});
|
|
41
|
-
expect(result).toEqual(new Date(2014, 8 /* Sep */, 1, 10));
|
|
42
|
-
});
|
|
43
|
-
|
|
44
|
-
it('returns same date object when passed empty duration', () => {
|
|
45
|
-
const result = sub(new Date(2014, 8 /* Sep */, 1, 10).getTime(), {});
|
|
46
|
-
expect(result).toEqual(new Date(2014, 8 /* Sep */, 1, 10));
|
|
47
|
-
});
|
|
48
|
-
|
|
49
|
-
it('accepts a timestamp', () => {
|
|
50
|
-
const result = sub(new Date(2014, 8 /* Sep */, 1, 14).getTime(), {
|
|
51
|
-
hours: 4,
|
|
52
|
-
});
|
|
53
|
-
expect(result).toEqual(new Date(2014, 8 /* Sep */, 1, 10));
|
|
54
|
-
});
|
|
55
|
-
|
|
56
|
-
it('does not mutate the original date', () => {
|
|
57
|
-
const date = new Date(2014, 8 /* Sep */, 1, 10);
|
|
58
|
-
sub(date, { hours: 4 });
|
|
59
|
-
expect(date).toEqual(new Date(2014, 8 /* Sep */, 1, 10));
|
|
60
|
-
});
|
|
61
|
-
|
|
62
|
-
it('works well if the desired month has fewer days and the provided date is in the last day of a month', () => {
|
|
63
|
-
const date = new Date(2014, 11 /* Dec */, 31);
|
|
64
|
-
const result = sub(date, { months: 3 });
|
|
65
|
-
expect(result).toEqual(new Date(2014, 8 /* Sep */, 30));
|
|
66
|
-
});
|
|
67
|
-
|
|
68
|
-
it('handles dates before 100 AD', () => {
|
|
69
|
-
const initialDate = new Date(0);
|
|
70
|
-
initialDate.setFullYear(1, 2 /* Mar */, 31);
|
|
71
|
-
initialDate.setHours(0, 0, 0, 0);
|
|
72
|
-
const expectedResult = new Date(0);
|
|
73
|
-
expectedResult.setFullYear(1, 1 /* Feb */, 28);
|
|
74
|
-
expectedResult.setHours(0, 0, 0, 0);
|
|
75
|
-
const result = sub(initialDate, { months: 1 });
|
|
76
|
-
expect(result).toEqual(expectedResult);
|
|
77
|
-
});
|
|
78
|
-
|
|
79
|
-
it('returns `Invalid Date` if the given date is invalid', () => {
|
|
80
|
-
const result = sub(new Date(NaN), { hours: 5 });
|
|
81
|
-
expect(result instanceof Date && isNaN(result.getTime())).toBe(true);
|
|
82
|
-
});
|
|
83
|
-
});
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from 'vitest';
|
|
2
|
-
import { subBusinessDays } from './index';
|
|
3
|
-
|
|
4
|
-
describe('subBusinessDays', () => {
|
|
5
|
-
it('substract the given number of business days', () => {
|
|
6
|
-
const result = subBusinessDays(new Date(2014, 8 /* Sep */, 1), 10);
|
|
7
|
-
expect(result).toEqual(new Date(2014, 7 /* Aug */, 18));
|
|
8
|
-
});
|
|
9
|
-
|
|
10
|
-
it('handles negative amount', () => {
|
|
11
|
-
const result = subBusinessDays(new Date(2014, 7 /* Sep */, 18), -10);
|
|
12
|
-
expect(result).toEqual(new Date(2014, 8 /* Sep */, 1));
|
|
13
|
-
});
|
|
14
|
-
|
|
15
|
-
it('can handle a large number of business days', () => {
|
|
16
|
-
const result = subBusinessDays(new Date(15000, 0 /* Jan */, 1), 3387885);
|
|
17
|
-
expect(result).toEqual(new Date(2014, 0 /* Jan */, 1));
|
|
18
|
-
});
|
|
19
|
-
|
|
20
|
-
it('accepts a timestamp', () => {
|
|
21
|
-
const result = subBusinessDays(new Date(2014, 8 /* Sep */, 1).getTime(), 10);
|
|
22
|
-
expect(result).toEqual(new Date(2014, 7 /* Aug */, 18));
|
|
23
|
-
});
|
|
24
|
-
|
|
25
|
-
it('does not mutate the original date', () => {
|
|
26
|
-
const date = new Date(2014, 8 /* Sep */, 1);
|
|
27
|
-
subBusinessDays(date, 11);
|
|
28
|
-
expect(date).toEqual(new Date(2014, 8 /* Sep */, 1));
|
|
29
|
-
});
|
|
30
|
-
|
|
31
|
-
it('returns `Invalid Date` if the given date is invalid', () => {
|
|
32
|
-
const result = subBusinessDays(new Date(NaN), 10);
|
|
33
|
-
expect(result instanceof Date && isNaN(result.getTime())).toBe(true);
|
|
34
|
-
});
|
|
35
|
-
|
|
36
|
-
it('returns `Invalid Date` if the given amount is NaN', () => {
|
|
37
|
-
const result = subBusinessDays(new Date(2014, 8 /* Sep */, 1), NaN);
|
|
38
|
-
expect(result instanceof Date && isNaN(result.getTime())).toBe(true);
|
|
39
|
-
});
|
|
40
|
-
});
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from 'vitest';
|
|
2
|
-
import { subDays } from './index';
|
|
3
|
-
|
|
4
|
-
describe('subDays', () => {
|
|
5
|
-
it('subtracts the given number of days', () => {
|
|
6
|
-
const result = subDays(new Date(2014, 8 /* Sep */, 1), 10);
|
|
7
|
-
expect(result).toEqual(new Date(2014, 7 /* Aug */, 22));
|
|
8
|
-
});
|
|
9
|
-
|
|
10
|
-
it('accepts a timestamp', () => {
|
|
11
|
-
const result = subDays(new Date(2014, 8 /* Sep */, 1).getTime(), 10);
|
|
12
|
-
expect(result).toEqual(new Date(2014, 7 /* Aug */, 22));
|
|
13
|
-
});
|
|
14
|
-
|
|
15
|
-
it('does not mutate the original date', () => {
|
|
16
|
-
const date = new Date(2014, 8 /* Sep */, 1);
|
|
17
|
-
subDays(date, 11);
|
|
18
|
-
expect(date).toEqual(new Date(2014, 8 /* Sep */, 1));
|
|
19
|
-
});
|
|
20
|
-
|
|
21
|
-
it('returns `Invalid Date` if the given date is invalid', () => {
|
|
22
|
-
const result = subDays(new Date(NaN), 10);
|
|
23
|
-
expect(result instanceof Date && isNaN(result.getTime())).toBe(true);
|
|
24
|
-
});
|
|
25
|
-
|
|
26
|
-
it('returns `Invalid Date` if the given amount is NaN', () => {
|
|
27
|
-
const result = subDays(new Date(2014, 8 /* Sep */, 1), NaN);
|
|
28
|
-
expect(result instanceof Date && isNaN(result.getTime())).toBe(true);
|
|
29
|
-
});
|
|
30
|
-
});
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from 'vitest';
|
|
2
|
-
import { subHours } from './index';
|
|
3
|
-
|
|
4
|
-
describe('subHours', () => {
|
|
5
|
-
it('subtracts the given numbers of hours', () => {
|
|
6
|
-
const result = subHours(new Date(2014, 6 /* Jul */, 11, 1, 0), 2);
|
|
7
|
-
expect(result).toEqual(new Date(2014, 6 /* Jul */, 10, 23, 0));
|
|
8
|
-
});
|
|
9
|
-
|
|
10
|
-
it('accepts a timestamp', () => {
|
|
11
|
-
const result = subHours(new Date(2014, 6 /* Jul */, 12, 1, 0).getTime(), 26);
|
|
12
|
-
expect(result).toEqual(new Date(2014, 6 /* Jul */, 10, 23, 0));
|
|
13
|
-
});
|
|
14
|
-
|
|
15
|
-
it('does not mutate the original date', () => {
|
|
16
|
-
const date = new Date(2014, 6 /* Jul */, 10, 23, 0);
|
|
17
|
-
subHours(date, 10);
|
|
18
|
-
expect(date).toEqual(new Date(2014, 6 /* Jul */, 10, 23, 0));
|
|
19
|
-
});
|
|
20
|
-
|
|
21
|
-
it('returns `Invalid Date` if the given date is invalid', () => {
|
|
22
|
-
const result = subHours(new Date(NaN), 2);
|
|
23
|
-
expect(result instanceof Date && isNaN(result.getTime())).toBe(true);
|
|
24
|
-
});
|
|
25
|
-
|
|
26
|
-
it('returns `Invalid Date` if the given amount is NaN', () => {
|
|
27
|
-
const result = subHours(new Date(2014, 6 /* Jul */, 11, 1, 0), NaN);
|
|
28
|
-
expect(result instanceof Date && isNaN(result.getTime())).toBe(true);
|
|
29
|
-
});
|
|
30
|
-
});
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from 'vitest';
|
|
2
|
-
import { subISOWeekYears } from './index';
|
|
3
|
-
|
|
4
|
-
describe('subISOWeekYears', () => {
|
|
5
|
-
it('subtracts the given number of ISO week-numbering years', () => {
|
|
6
|
-
const result = subISOWeekYears(new Date(2014, 8 /* Sep */, 1), 5);
|
|
7
|
-
expect(result).toEqual(new Date(2009, 7 /* Aug */, 31));
|
|
8
|
-
});
|
|
9
|
-
|
|
10
|
-
it('accepts a timestamp', () => {
|
|
11
|
-
const result = subISOWeekYears(new Date(2014, 8 /* Sep */, 1).getTime(), 12);
|
|
12
|
-
expect(result).toEqual(new Date(2002, 8 /* Sep */, 2));
|
|
13
|
-
});
|
|
14
|
-
|
|
15
|
-
it('does not mutate the original date', () => {
|
|
16
|
-
const date = new Date(2014, 8 /* Sep */, 1);
|
|
17
|
-
subISOWeekYears(date, 12);
|
|
18
|
-
expect(date).toEqual(new Date(2014, 8 /* Sep */, 1));
|
|
19
|
-
});
|
|
20
|
-
|
|
21
|
-
it('handles dates before 100 AD', () => {
|
|
22
|
-
const initialDate = new Date(0);
|
|
23
|
-
initialDate.setFullYear(15, 5 /* Jun */, 26);
|
|
24
|
-
initialDate.setHours(0, 0, 0, 0);
|
|
25
|
-
const expectedResult = new Date(0);
|
|
26
|
-
expectedResult.setFullYear(10, 6 /* Jul */, 2);
|
|
27
|
-
expectedResult.setHours(0, 0, 0, 0);
|
|
28
|
-
const result = subISOWeekYears(initialDate, 5);
|
|
29
|
-
expect(result).toEqual(expectedResult);
|
|
30
|
-
});
|
|
31
|
-
|
|
32
|
-
it('returns `Invalid Date` if the given date is invalid', () => {
|
|
33
|
-
const result = subISOWeekYears(new Date(NaN), 5);
|
|
34
|
-
expect(result instanceof Date && isNaN(result.getTime())).toBe(true);
|
|
35
|
-
});
|
|
36
|
-
|
|
37
|
-
it('returns `Invalid Date` if the given amount is NaN', () => {
|
|
38
|
-
const result = subISOWeekYears(new Date(2014, 8 /* Sep */, 1), NaN);
|
|
39
|
-
expect(result instanceof Date && isNaN(result.getTime())).toBe(true);
|
|
40
|
-
});
|
|
41
|
-
});
|