import unittest from solutions.day_04 import Solution class Day04TestCase(unittest.TestCase): def setUp(self): self.solution = Solution() self.puzzle_input = '\n'.join([ '[1518-11-01 00:00] Guard #10 begins shift', '[1518-11-01 00:05] falls asleep', '[1518-11-01 00:25] wakes up', '[1518-11-01 00:30] falls asleep', '[1518-11-01 00:55] wakes up', '[1518-11-01 23:58] Guard #99 begins shift', '[1518-11-02 00:40] falls asleep', '[1518-11-02 00:50] wakes up', '[1518-11-03 00:05] Guard #10 begins shift', '[1518-11-03 00:24] falls asleep', '[1518-11-03 00:29] wakes up', '[1518-11-04 00:02] Guard #99 begins shift', '[1518-11-04 00:36] falls asleep', '[1518-11-04 00:46] wakes up', '[1518-11-05 00:03] Guard #99 begins shift', '[1518-11-05 00:45] falls asleep', '[1518-11-05 00:55] wakes up', ]) def test_most_sleeping_guard(self): assert self.solution.solve(self.puzzle_input) == 240 # 10 * 24 def test_frequent_sleeping_guard(self): assert self.solution.solve_again(self.puzzle_input) == 4455 # 99 * 45 if __name__ == '__main__': unittest.main()