Skip to content

Commit 56ea80d

Browse files
committed
test: fix issue related of daylight saving time
1 parent 2b2a1e9 commit 56ea80d

1 file changed

Lines changed: 10 additions & 9 deletions

File tree

src/domains/attempt/schemas/attempt.test.ts

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,15 @@ import { describe, expect, test } from "vitest";
44
import type { AttemptEntity } from "../../database/schemas/attempt-entity";
55
import { DateTime } from "../utils/date-time";
66
import type { SplitEntity } from "../../database/schemas/split-entity";
7+
import { Time } from "../utils/time";
78

89
const parse = (attemptEntity: AttemptEntity): Attempt => {
910
return v.parse(AttemptSchema, attemptEntity);
1011
};
1112

1213
const date = new Date();
1314
const timestamp = date.getTime();
14-
const timezoneOffsetMs = date.getTimezoneOffset() * 60 * 1000;
15+
const oneMinutes = Time.parse("1:00.000");
1516

1617
describe("attemptSchema", () => {
1718
const attemptEntity: AttemptEntity = {
@@ -63,8 +64,8 @@ describe("attemptSchema", () => {
6364
accumulatedCoins: 3,
6465
time: "1:00.000",
6566
accumulatedTime: "1:00.000",
66-
parsedTime: 60_000 + timezoneOffsetMs,
67-
parsedAccumulatedTime: 60_000 + timezoneOffsetMs,
67+
parsedTime: oneMinutes,
68+
parsedAccumulatedTime: oneMinutes,
6869
raw: split_1,
6970
});
7071
});
@@ -81,26 +82,26 @@ describe("attemptSchema", () => {
8182
accumulatedCoins: 3,
8283
time: "1:00.000",
8384
accumulatedTime: "1:00.000",
84-
parsedTime: 60_000 + timezoneOffsetMs,
85-
parsedAccumulatedTime: 60_000 + timezoneOffsetMs,
85+
parsedTime: oneMinutes,
86+
parsedAccumulatedTime: oneMinutes,
8687
raw: split_1,
8788
});
8889
expect(attempt.splits.at(1)).toStrictEqual({
8990
coins: -2,
9091
accumulatedCoins: 1,
9192
time: "1:00.000",
9293
accumulatedTime: "2:00.000",
93-
parsedTime: 60_000 + timezoneOffsetMs,
94-
parsedAccumulatedTime: 2 * (60_000 + timezoneOffsetMs),
94+
parsedTime: oneMinutes,
95+
parsedAccumulatedTime: 2 * oneMinutes,
9596
raw: split_2,
9697
});
9798
expect(attempt.splits.at(2)).toStrictEqual({
9899
coins: 1,
99100
accumulatedCoins: 2,
100101
time: "1:00.000",
101102
accumulatedTime: "3:00.000",
102-
parsedTime: 60_000 + timezoneOffsetMs,
103-
parsedAccumulatedTime: 3 * (60_000 + timezoneOffsetMs),
103+
parsedTime: oneMinutes,
104+
parsedAccumulatedTime: 3 * oneMinutes,
104105
raw: split_3,
105106
});
106107
});

0 commit comments

Comments
 (0)