-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdateParser.spec.js
More file actions
114 lines (105 loc) · 1.72 KB
/
Copy pathdateParser.spec.js
File metadata and controls
114 lines (105 loc) · 1.72 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
const { parseDate } = require("./dateParser");
const answer1 = {
year: 2022,
month: 1,
date: 9,
hour: 19,
minute: 30,
seconds: 0,
};
const answer2 = {
repeat: "매주",
week: "수",
hour: 19,
minute: 30,
seconds: 0,
};
const answer3 = {
year: new Date().getFullYear(),
month: new Date().getMonth() + 1,
date: new Date().getDate(),
hour: 17,
minute: 0,
seconds: 0,
};
const answer4 = {
year: new Date().getFullYear(),
month: new Date().getMonth() + 1,
date: new Date().getDate(),
hour: 18,
minute: 30,
seconds: 0,
};
const answer5 = {
repeat: "매달",
date: 15,
hour: 10,
minute: 30,
seconds: 0,
};
const answer6 = {
repeat: "매일",
hour: 9,
minute: 30,
seconds: 0,
};
const answer7 = {
...answer3,
hour: 10,
};
const answer8 = {
...answer3,
date: new Date().getDate() + 1,
hour: 19,
};
const testCases = [
{
case: "2022년 1월 9일 오후 7시 30분",
answer: answer1,
},
{
case: "1월 9일 오후 7시 30분",
answer: answer1,
},
{
case: "매주 수요일 오후 7시 30분",
answer: answer2,
},
{
case: "5시에",
answer: answer3,
},
{
case: "6시 30분에",
answer: answer4,
},
{
case: "매달 15일 오전 10시 30분",
answer: answer5,
},
{
case: "매일 오전 9시 30분",
answer: answer6,
},
{
case: "오전 10시에",
answer: answer7,
},
{
case: "내일 오후 7시",
answer: answer8,
},
{
case: "오늘 오후 5시",
answer: answer3,
},
{
case: "9일 오후 7시 30분",
answer: answer1,
},
];
for (const testCase of testCases) {
it(testCase.case, () => {
expect(parseDate(testCase.case)).toStrictEqual(testCase.answer);
});
}