advent-of-code/2017-python/tests/day_10_tests.py

39 lines
1.4 KiB
Python
Raw Normal View History

2021-11-01 16:40:46 +01:00
import unittest
from solutions.day_10 import Solution
class Day10TestCase(unittest.TestCase):
def setUp(self):
self.solution = Solution()
def test_process_and_check(self):
self.solution.reset(5)
self.solution.reverse(3)
assert self.solution.list == [2, 1, 0, 3, 4]
assert self.solution.skip_size == 1
assert self.solution.pos == 3
self.solution.reverse(4)
assert self.solution.list == [4, 3, 0, 1, 2]
assert self.solution.skip_size == 2
assert self.solution.pos == 3
self.solution.reverse(1)
assert self.solution.list == [4, 3, 0, 1, 2]
assert self.solution.skip_size == 3
assert self.solution.pos == 1
self.solution.reverse(5)
assert self.solution.list == [3, 4, 2, 1, 0]
assert self.solution.skip_size == 4
assert self.solution.pos == 4
assert self.solution.solve('3,4,1,5', r=5) == 12
def test_dense_hash(self):
assert self.solution.solve_again('') == 'a2582a3a0e66e6e86e3812dcb672a272'
assert self.solution.solve_again('AoC 2017') == '33efeb34ea91902bb2f59c9920caa6cd'
assert self.solution.solve_again('1,2,3') == '3efbe78a8d82f29979031a4aa0b16a9d'
assert self.solution.solve_again('1,2,4') == '63960835bcdc130f0b66d7ff4f6a5a8e'
if __name__ == '__main__':
unittest.main()