Skip to content

Commit 79a832c

Browse files
authored
chore: Add regression tests for 2022 year (#209)
1 parent dc55121 commit 79a832c

9 files changed

+2931
-2505
lines changed

tests/regression_2015_test.go

Lines changed: 364 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,364 @@
1+
package tests_test
2+
3+
import (
4+
"testing"
5+
6+
"github.com/obalunenko/advent-of-code/internal/puzzles"
7+
)
8+
9+
func testcases2015(tb testing.TB) []testcase {
10+
year := puzzles.Year2015
11+
12+
return []testcase{
13+
{
14+
name: tcName(tb, year, puzzles.Day01),
15+
args: args{
16+
year: year.String(),
17+
name: puzzles.Day01.String(),
18+
},
19+
want: puzzles.Result{
20+
Year: year.String(),
21+
Name: puzzles.Day01.String(),
22+
Part1: "232",
23+
Part2: "1783",
24+
},
25+
wantErr: false,
26+
},
27+
{
28+
name: tcName(tb, year, puzzles.Day02),
29+
args: args{
30+
year: year.String(),
31+
name: puzzles.Day02.String(),
32+
},
33+
want: puzzles.Result{
34+
Year: year.String(),
35+
Name: puzzles.Day02.String(),
36+
Part1: "1598415",
37+
Part2: "3812909",
38+
},
39+
wantErr: false,
40+
},
41+
{
42+
name: tcName(tb, year, puzzles.Day03),
43+
args: args{
44+
year: year.String(),
45+
name: puzzles.Day03.String(),
46+
},
47+
want: puzzles.Result{
48+
Year: year.String(),
49+
Name: puzzles.Day03.String(),
50+
Part1: "2565",
51+
Part2: "2639",
52+
},
53+
wantErr: false,
54+
},
55+
{
56+
name: tcName(tb, year, puzzles.Day04),
57+
args: args{
58+
year: year.String(),
59+
name: puzzles.Day04.String(),
60+
},
61+
want: puzzles.Result{
62+
Year: year.String(),
63+
Name: puzzles.Day04.String(),
64+
Part1: "",
65+
Part2: "",
66+
},
67+
wantErr: true,
68+
},
69+
{
70+
name: tcName(tb, year, puzzles.Day05),
71+
args: args{
72+
year: year.String(),
73+
name: puzzles.Day05.String(),
74+
},
75+
want: puzzles.Result{
76+
Year: year.String(),
77+
Name: puzzles.Day05.String(),
78+
Part1: "",
79+
Part2: "",
80+
},
81+
wantErr: true,
82+
},
83+
{
84+
name: tcName(tb, year, puzzles.Day06),
85+
args: args{
86+
year: year.String(),
87+
name: puzzles.Day06.String(),
88+
},
89+
want: puzzles.Result{
90+
Year: year.String(),
91+
Name: puzzles.Day06.String(),
92+
Part1: "",
93+
Part2: "",
94+
},
95+
wantErr: true,
96+
},
97+
{
98+
name: tcName(tb, year, puzzles.Day07),
99+
args: args{
100+
year: year.String(),
101+
name: puzzles.Day07.String(),
102+
},
103+
want: puzzles.Result{
104+
Year: year.String(),
105+
Name: puzzles.Day07.String(),
106+
Part1: "",
107+
Part2: "",
108+
},
109+
wantErr: true,
110+
},
111+
{
112+
name: tcName(tb, year, puzzles.Day08),
113+
args: args{
114+
year: year.String(),
115+
name: puzzles.Day08.String(),
116+
},
117+
want: puzzles.Result{
118+
Year: year.String(),
119+
Name: puzzles.Day08.String(),
120+
Part1: "",
121+
Part2: "",
122+
},
123+
wantErr: true,
124+
},
125+
{
126+
name: tcName(tb, year, puzzles.Day09),
127+
args: args{
128+
year: year.String(),
129+
name: puzzles.Day09.String(),
130+
},
131+
want: puzzles.Result{
132+
Year: year.String(),
133+
Name: puzzles.Day09.String(),
134+
Part1: "",
135+
Part2: "",
136+
},
137+
wantErr: true,
138+
},
139+
{
140+
name: tcName(tb, year, puzzles.Day10),
141+
args: args{
142+
year: year.String(),
143+
name: puzzles.Day10.String(),
144+
},
145+
want: puzzles.Result{
146+
Year: year.String(),
147+
Name: puzzles.Day10.String(),
148+
Part1: "",
149+
Part2: "",
150+
},
151+
wantErr: true,
152+
},
153+
{
154+
name: tcName(tb, year, puzzles.Day11),
155+
args: args{
156+
year: year.String(),
157+
name: puzzles.Day11.String(),
158+
},
159+
want: puzzles.Result{
160+
Year: year.String(),
161+
Name: puzzles.Day11.String(),
162+
Part1: "",
163+
Part2: "",
164+
},
165+
wantErr: true,
166+
},
167+
{
168+
name: tcName(tb, year, puzzles.Day12),
169+
args: args{
170+
year: year.String(),
171+
name: puzzles.Day12.String(),
172+
},
173+
want: puzzles.Result{
174+
Year: year.String(),
175+
Name: puzzles.Day12.String(),
176+
Part1: "",
177+
Part2: "",
178+
},
179+
wantErr: true,
180+
},
181+
{
182+
name: tcName(tb, year, puzzles.Day13),
183+
args: args{
184+
year: year.String(),
185+
name: puzzles.Day13.String(),
186+
},
187+
want: puzzles.Result{
188+
Year: year.String(),
189+
Name: puzzles.Day13.String(),
190+
Part1: "",
191+
Part2: "",
192+
},
193+
wantErr: true,
194+
},
195+
{
196+
name: tcName(tb, year, puzzles.Day14),
197+
args: args{
198+
year: year.String(),
199+
name: puzzles.Day14.String(),
200+
},
201+
want: puzzles.Result{
202+
Year: year.String(),
203+
Name: puzzles.Day14.String(),
204+
Part1: "",
205+
Part2: "",
206+
},
207+
wantErr: true,
208+
},
209+
{
210+
name: tcName(tb, year, puzzles.Day15),
211+
args: args{
212+
year: year.String(),
213+
name: puzzles.Day15.String(),
214+
},
215+
want: puzzles.Result{
216+
Year: year.String(),
217+
Name: puzzles.Day15.String(),
218+
Part1: "",
219+
Part2: "",
220+
},
221+
wantErr: true,
222+
},
223+
{
224+
name: tcName(tb, year, puzzles.Day16),
225+
args: args{
226+
year: year.String(),
227+
name: puzzles.Day16.String(),
228+
},
229+
want: puzzles.Result{
230+
Year: year.String(),
231+
Name: puzzles.Day16.String(),
232+
Part1: "",
233+
Part2: "",
234+
},
235+
wantErr: true,
236+
},
237+
{
238+
name: tcName(tb, year, puzzles.Day17),
239+
args: args{
240+
year: year.String(),
241+
name: puzzles.Day17.String(),
242+
},
243+
want: puzzles.Result{
244+
Year: year.String(),
245+
Name: puzzles.Day17.String(),
246+
Part1: "",
247+
Part2: "",
248+
},
249+
wantErr: true,
250+
},
251+
{
252+
name: tcName(tb, year, puzzles.Day18),
253+
args: args{
254+
year: year.String(),
255+
name: puzzles.Day18.String(),
256+
},
257+
want: puzzles.Result{
258+
Year: year.String(),
259+
Name: puzzles.Day18.String(),
260+
Part1: "",
261+
Part2: "",
262+
},
263+
wantErr: true,
264+
},
265+
{
266+
name: tcName(tb, year, puzzles.Day19),
267+
args: args{
268+
year: year.String(),
269+
name: puzzles.Day19.String(),
270+
},
271+
want: puzzles.Result{
272+
Year: year.String(),
273+
Name: puzzles.Day19.String(),
274+
Part1: "",
275+
Part2: "",
276+
},
277+
wantErr: true,
278+
},
279+
{
280+
name: tcName(tb, year, puzzles.Day20),
281+
args: args{
282+
year: year.String(),
283+
name: puzzles.Day20.String(),
284+
},
285+
want: puzzles.Result{
286+
Year: year.String(),
287+
Name: puzzles.Day20.String(),
288+
Part1: "",
289+
Part2: "",
290+
},
291+
wantErr: true,
292+
},
293+
{
294+
name: tcName(tb, year, puzzles.Day21),
295+
args: args{
296+
year: year.String(),
297+
name: puzzles.Day21.String(),
298+
},
299+
want: puzzles.Result{
300+
Year: year.String(),
301+
Name: puzzles.Day21.String(),
302+
Part1: "",
303+
Part2: "",
304+
},
305+
wantErr: true,
306+
},
307+
{
308+
name: tcName(tb, year, puzzles.Day22),
309+
args: args{
310+
year: year.String(),
311+
name: puzzles.Day22.String(),
312+
},
313+
want: puzzles.Result{
314+
Year: year.String(),
315+
Name: puzzles.Day22.String(),
316+
Part1: "",
317+
Part2: "",
318+
},
319+
wantErr: true,
320+
},
321+
{
322+
name: tcName(tb, year, puzzles.Day23),
323+
args: args{
324+
year: year.String(),
325+
name: puzzles.Day23.String(),
326+
},
327+
want: puzzles.Result{
328+
Year: year.String(),
329+
Name: puzzles.Day23.String(),
330+
Part1: "",
331+
Part2: "",
332+
},
333+
wantErr: true,
334+
},
335+
{
336+
name: tcName(tb, year, puzzles.Day24),
337+
args: args{
338+
year: year.String(),
339+
name: puzzles.Day24.String(),
340+
},
341+
want: puzzles.Result{
342+
Year: year.String(),
343+
Name: puzzles.Day24.String(),
344+
Part1: "",
345+
Part2: "",
346+
},
347+
wantErr: true,
348+
},
349+
{
350+
name: tcName(tb, year, puzzles.Day25),
351+
args: args{
352+
year: year.String(),
353+
name: puzzles.Day25.String(),
354+
},
355+
want: puzzles.Result{
356+
Year: year.String(),
357+
Name: puzzles.Day25.String(),
358+
Part1: "",
359+
Part2: "",
360+
},
361+
wantErr: true,
362+
},
363+
}
364+
}

0 commit comments

Comments
 (0)