2021-11-01 16:40:46 +01:00
|
|
|
import unittest
|
|
|
|
|
|
|
|
|
|
from solutions.day_20 import Solution
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class Day20TestCase(unittest.TestCase):
|
|
|
|
|
def setUp(self):
|
|
|
|
|
self.solution = Solution()
|
|
|
|
|
|
|
|
|
|
def test_shortest_distance_over_time(self):
|
2025-05-06 20:14:58 +02:00
|
|
|
puzzle_input = """
|
2021-11-01 16:40:46 +01:00
|
|
|
p=< 3,0,0>, v=< 2,0,0>, a=<-1,0,0>
|
|
|
|
|
p=< 4,0,0>, v=< 0,0,0>, a=<-2,0,0>
|
2025-05-06 20:14:58 +02:00
|
|
|
""".strip()
|
2021-11-01 16:40:46 +01:00
|
|
|
assert self.solution.solve(puzzle_input, 4) == 0
|
|
|
|
|
|
|
|
|
|
def test_something(self):
|
2025-05-06 20:14:58 +02:00
|
|
|
puzzle_input = """
|
2021-11-01 16:40:46 +01:00
|
|
|
p=<-6,0,0>, v=< 3,0,0>, a=< 0,0,0>
|
|
|
|
|
p=<-4,0,0>, v=< 2,0,0>, a=< 0,0,0>
|
|
|
|
|
p=<-2,0,0>, v=< 1,0,0>, a=< 0,0,0>
|
|
|
|
|
p=< 3,0,0>, v=<-1,0,0>, a=< 0,0,0>
|
2025-05-06 20:14:58 +02:00
|
|
|
""".strip()
|
2021-11-01 16:40:46 +01:00
|
|
|
assert self.solution.solve_again(puzzle_input, 4) == 1
|
|
|
|
|
|
|
|
|
|
|
2025-05-06 20:14:58 +02:00
|
|
|
if __name__ == "__main__":
|
2021-11-01 16:40:46 +01:00
|
|
|
unittest.main()
|