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()