1
0
Fork 0
mirror of https://github.com/Findus23/AdventOfCode2019.git synced 2024-08-27 19:52:12 +02:00
AdventOfCode2019/python/3/test_day3.py
2019-12-05 14:57:19 +01:00

33 lines
1.2 KiB
Python

from day3 import parse_path, manhatten_distance, closest_crossing, part1, shortest_signal, part2
def test_parse_path():
assert parse_path("R8,U5,L5,D3") == [('R', 8), ('U', 5), ('L', 5), ('D', 3)]
def test_manhatten_distance():
assert manhatten_distance((1, 4)) == 5
def test_closest_crossing():
assert closest_crossing(parse_path("R8,U5,L5,D3"), parse_path("U7,R6,D4,L4")) == 6
assert closest_crossing(parse_path("R75,D30,R83,U83,L12,D49,R71,U7,L72"),
parse_path("U62,R66,U55,R34,D71,R55,D58,R83")) == 159
assert closest_crossing(parse_path("R98,U47,R26,D63,R33,U87,L62,D20,R33,U53,R51"),
parse_path("U98,R91,D20,R16,D67,R40,U7,R15,U6,R7")) == 135
def test_shortest_signal():
assert shortest_signal(parse_path("R8,U5,L5,D3"), parse_path("U7,R6,D4,L4")) == 30
assert shortest_signal(parse_path("R75,D30,R83,U83,L12,D49,R71,U7,L72"),
parse_path("U62,R66,U55,R34,D71,R55,D58,R83")) == 610
assert shortest_signal(parse_path("R98,U47,R26,D63,R33,U87,L62,D20,R33,U53,R51"),
parse_path("U98,R91,D20,R16,D67,R40,U7,R15,U6,R7")) == 410
def test_part1():
assert part1() == 316
def test_part2():
assert part2() == 16368