Skip to content

Commit f62cb71

Browse files
authored
AOC 2025: start adding tests
Signed-off-by: Bradley Reynolds <[email protected]>
1 parent 0a4a394 commit f62cb71

File tree

4 files changed

+100
-1
lines changed

4 files changed

+100
-1
lines changed
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
from aoc_2025_01 import Direction, parse_input, part1, part2
2+
3+
TEST_INPUT = """
4+
L68
5+
L30
6+
R48
7+
L5
8+
R60
9+
L55
10+
L1
11+
L99
12+
R14
13+
L82
14+
"""
15+
16+
PARSED_EXAMPLE = [
17+
(Direction.LEFT, 68),
18+
(Direction.LEFT, 30),
19+
(Direction.RIGHT, 48),
20+
(Direction.LEFT, 5),
21+
(Direction.RIGHT, 60),
22+
(Direction.LEFT, 55),
23+
(Direction.LEFT, 1),
24+
(Direction.LEFT, 99),
25+
(Direction.RIGHT, 14),
26+
(Direction.LEFT, 82),
27+
]
28+
29+
30+
def test_parse_input() -> None:
31+
assert parse_input(TEST_INPUT) == PARSED_EXAMPLE
32+
33+
34+
def test_part1() -> None:
35+
assert part1(PARSED_EXAMPLE) == 3
36+
37+
38+
def test_part2() -> None:
39+
assert part2(PARSED_EXAMPLE) == 6
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
from aoc_2025_02 import parse_input, part1, part2
2+
3+
TEST_INPUT = """
4+
11-22,95-115,998-1012,1188511880-1188511890,222220-222224,
5+
1698522-1698528,446443-446449,38593856-38593862,565653-565659,
6+
824824821-824824827,2121212118-2121212124
7+
"""
8+
9+
PARSED_EXAMPLE = [
10+
(11, 22),
11+
(95, 115),
12+
(998, 1012),
13+
(1188511880, 1188511890),
14+
(222220, 222224),
15+
(1698522, 1698528),
16+
(446443, 446449),
17+
(38593856, 38593862),
18+
(565653, 565659),
19+
(824824821, 824824827),
20+
(2121212118, 2121212124),
21+
]
22+
23+
24+
def test_parse_input() -> None:
25+
assert parse_input(TEST_INPUT) == PARSED_EXAMPLE
26+
27+
28+
def test_part1() -> None:
29+
assert part1(PARSED_EXAMPLE) == 1227775554
30+
31+
32+
def test_part2() -> None:
33+
assert part2(PARSED_EXAMPLE) == 4174379265

events/advent_of_code/2025/03/python/aoc_2025_03.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33

44
def parse_input(text: str) -> list[list[int]]:
5-
return [list(map(int, line)) for line in text.split("\n")]
5+
return [list(map(int, line)) for line in text.split("\n") if line]
66

77

88
def part1(banks: list[list[int]]) -> int:
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
from aoc_2025_03 import parse_input, part1, part2
2+
3+
TEST_INPUT = """
4+
987654321111111
5+
811111111111119
6+
234234234234278
7+
818181911112111
8+
"""
9+
10+
PARSED_EXAMPLE = [
11+
[9, 8, 7, 6, 5, 4, 3, 2, 1, 1, 1, 1, 1, 1, 1],
12+
[8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 9],
13+
[2, 3, 4, 2, 3, 4, 2, 3, 4, 2, 3, 4, 2, 7, 8],
14+
[8, 1, 8, 1, 8, 1, 9, 1, 1, 1, 1, 2, 1, 1, 1],
15+
]
16+
17+
18+
def test_parse_input() -> None:
19+
assert parse_input(TEST_INPUT) == PARSED_EXAMPLE
20+
21+
22+
def test_part1() -> None:
23+
assert part1(PARSED_EXAMPLE) == 357
24+
25+
26+
def test_part2() -> None:
27+
assert part2(PARSED_EXAMPLE) == 3121910778619

0 commit comments

Comments
 (0)