def test_optimal_scheduling_should_work_with_single_tasks(self): self.assertEqual(interval_scheduling_maximization.optimal_scheduling([(2, 3)]), [(2, 3)])
def test_optimal_scheduling_should_work_with_two_tasks_that_overlap(self): self.assertEqual(interval_scheduling_maximization.optimal_scheduling([(2, 4), (3, 5)]), [(2, 4)])
def test_optimal_scheduling_should_work_with_empty_iterables(self): self.assertEqual(interval_scheduling_maximization.optimal_scheduling([]), [])
def test_optimal_scheduling_should_work_with_two_tasks_in_the_correct_order(self): self.assertEqual(interval_scheduling_maximization.optimal_scheduling([(2, 3), (3, 4)]), [(2, 3), (3, 4)])