def test_adding_single_task_in_todo_and_matching_view_output_with_expected( self, mock_input): formatter = Format() todo = ToDoList(formatter) todo.add_task() with patch('sys.stdout', new=StringIO()) as fake_out: todo.view_tasks() self.assertEqual("Incomplete Tasks:\n\n1. Meet Ema at 7\n", fake_out.getvalue())
def test_when_incomplete_list_is_empty_and_completed_list_has_elements( self, mock_list_type): formatter = Format() todo = ToDoList(formatter) todo.add_task() todo.mark_completed() with patch('sys.stdout', new=StringIO()) as fake_out: todo.view_tasks() self.assertEqual("Complete Tasks:\n\n1. Meet Rishabh\n", fake_out.getvalue())
def test_adding_two_tasks_in_todo_and_checking_if_view_output_matches_expected( self, mock_input): formatter = Format() todo = ToDoList(formatter) todo.add_task() todo.add_task() with patch('sys.stdout', new=StringIO()) as fake_out: todo.view_tasks() self.assertEqual( "Incomplete Tasks:\n\n1. Meet Ema at 7\n2. Complete the assignment\n", fake_out.getvalue())
def test_adding_task_and_editing_there_itself(self, mock_input): formatter = Format() todo = ToDoList(formatter) todo.add_task() with patch('sys.stdout', new=StringIO()) as fake_out: todo.view_tasks() self.assertEqual("Incomplete Tasks:\n\n1. Meet Ema at 7:00\n", fake_out.getvalue()) todo.edit_task() with patch('sys.stdout', new=StringIO()) as fake_out: todo.view_tasks() self.assertEqual("Incomplete Tasks:\n\n1. Meet Ema at 8:00\n", fake_out.getvalue())
def test_marking_a_task_as_complete_moves_it_to_the_complete_list( self, mock_input): formatter = Format() todo = ToDoList(formatter) todo.add_task() todo.add_task() todo.mark_completed() with patch('sys.stdout', new=StringIO()) as fake_out: todo.view_tasks() self.assertEqual( "Incomplete Tasks:\n\n1. Have Lunch at 1:00pm\n\nComplete Tasks:\n\n1. Meet Ema at 7:00\n", fake_out.getvalue())
def test_the_list_order_is_retained_when_a_task_from_middle_is_marked_as_complete( self, mock_input): formatter = Format() todo = ToDoList(formatter) todo.add_task() todo.add_task() todo.add_task() todo.add_task() todo.mark_completed() with patch('sys.stdout', new=StringIO()) as fake_out: todo.view_tasks() self.assertEqual( "Incomplete Tasks:\n\n1. Have Lunch at 1:00pm\n2. Do your assignments\n3. Sleep\n\nComplete Tasks:\n\n1. Meet Ema at 7:00\n", fake_out.getvalue())
def test_empty_todo_list(self): formatter = Format() todo = ToDoList(formatter) with patch('sys.stdout', new=StringIO()) as fake_out: todo.view_tasks() self.assertEqual("Your TODO list is empty!\n", fake_out.getvalue())
def test_the_todo_list_persists_after_each_session(self, mock_input): formatter = Format() todo = ToDoList(formatter) todo.add_task() todo_another_one = ToDoList(formatter) self.assertEqual(todo.view_tasks(), todo_another_one.view_tasks())