advent-of-code/2018-python/tests/day_10_tests.py
2021-11-01 16:45:03 +01:00

59 lines
2.2 KiB
Python

import unittest
from solutions.day_10 import Solution
class Day10TestCase(unittest.TestCase):
def setUp(self):
self.solution = Solution()
def test_reveal_message(self):
puzzle_input = '\n'.join([
'position=< 9, 1> velocity=< 0, 2>',
'position=< 7, 0> velocity=<-1, 0>',
'position=< 3, -2> velocity=<-1, 1>',
'position=< 6, 10> velocity=<-2, -1>',
'position=< 2, -4> velocity=< 2, 2>',
'position=<-6, 10> velocity=< 2, -2>',
'position=< 1, 8> velocity=< 1, -1>',
'position=< 1, 7> velocity=< 1, 0>',
'position=<-3, 11> velocity=< 1, -2>',
'position=< 7, 6> velocity=<-1, -1>',
'position=<-2, 3> velocity=< 1, 0>',
'position=<-4, 3> velocity=< 2, 0>',
'position=<10, -3> velocity=<-1, 1>',
'position=< 5, 11> velocity=< 1, -2>',
'position=< 4, 7> velocity=< 0, -1>',
'position=< 8, -2> velocity=< 0, 1>',
'position=<15, 0> velocity=<-2, 0>',
'position=< 1, 6> velocity=< 1, 0>',
'position=< 8, 9> velocity=< 0, -1>',
'position=< 3, 3> velocity=<-1, 1>',
'position=< 0, 5> velocity=< 0, -1>',
'position=<-2, 2> velocity=< 2, 0>',
'position=< 5, -2> velocity=< 1, 2>',
'position=< 1, 4> velocity=< 2, 1>',
'position=<-2, 7> velocity=< 2, -2>',
'position=< 3, 6> velocity=<-1, -1>',
'position=< 5, 0> velocity=< 1, 0>',
'position=<-6, 0> velocity=< 2, 0>',
'position=< 5, 9> velocity=< 1, -2>',
'position=<14, 7> velocity=<-2, 0>',
'position=<-3, 6> velocity=< 2, -1>',
])
expected = '\n'.join([
'#...#..###',
'#...#...#.',
'#...#...#.',
'#####...#.',
'#...#...#.',
'#...#...#.',
'#...#...#.',
'#...#..###',
])
print(self.solution.render(puzzle_input, 3))
assert self.solution.render(puzzle_input, 3) == expected
if __name__ == '__main__':
unittest.main()