def test_create_chart_save_folder(self, monkeypatch, test_original_location): mkdir_mock, move_chart_save_folder_mock = { 'called': False }, { 'called': False } test_new_save_folder_path = Path('somewhere else') def mocked_move_chart_save_folder(original_location, new_location): assert test_original_location # Should not be called if no original location. assert (original_location, new_location) == (test_original_location, test_new_save_folder_path) move_chart_save_folder_mock['called'] = True def mocked_mkdir(path_arg, **kwargs): assert path_arg == test_new_save_folder_path assert kwargs['parents'] and kwargs['exist_ok'] mkdir_mock['called'] = True monkeypatch.setattr(settings_functions, 'move_chart_save_folder', mocked_move_chart_save_folder) monkeypatch.setattr(settings_functions.Path, 'mkdir', mocked_mkdir) assert create_chart_save_folder(test_new_save_folder_path, test_original_location) is None assert mkdir_mock['called'] # Should always be called. if test_original_location: assert move_chart_save_folder_mock['called'] else: assert not move_chart_save_folder_mock['called']
def test_create_chart_save_folder_no_original(self, mocked_mkdir, mocked_move_chart_save_folder, ): assert create_chart_save_folder(self.test_new_location) is None mocked_move_chart_save_folder.assert_not_called() mocked_mkdir.assert_called_once_with(exist_ok=True, parents=True)
def test_create_chart_save_folder_test_correct_argument_passed_to_path(self, mocked_path, mocked_move_chart_save_folder, ): """Mocking call to path and mkdir method on Path class didn't work.""" assert create_chart_save_folder(self.test_new_location) is None mocked_move_chart_save_folder.assert_not_called() mocked_path.assert_called_once_with(self.test_new_location)