import unittest
from solutions.day_09 import Solution
class Day9TestCase(unittest.TestCase):
def setUp(self):
self.solution = Solution()
def test_calculates_score(self):
assert self.solution.solve("{}") == 1
assert self.solution.solve("{{{}}}") == 6
assert self.solution.solve("{{},{}}") == 5
assert self.solution.solve("{{{},{},{{}}}}") == 16
assert self.solution.solve("{,,,}") == 1
assert self.solution.solve("{{},{},{},{}}") == 9
assert self.solution.solve("{{},{},{},{}}") == 9
assert self.solution.solve("{{},{},{},{}}") == 3
def test_count_garbage(self):
assert self.solution.solve_again("<>") == 0
assert self.solution.solve_again("") == 17
assert self.solution.solve_again("<<<<>") == 3
assert self.solution.solve_again("<{!>}>") == 2
assert self.solution.solve_again("") == 0
assert self.solution.solve_again(">") == 0
assert self.solution.solve_again('<{o"i!a,<{i') == 10
if __name__ == "__main__":
unittest.main()