def test_get_target_files_noinput(self, mocker, tmpdir): from runabq import files mocker.patch.object(files.pathlib.Path, 'glob', return_value=list()) mocker.patch.object(files, '_get_input_files', return_value=list()) current_dir = tmpdir.mkdir('runabq_test_currentdir') result = files.get_target_files(current_dir) assert result == dict()
def runabq(keyword: tuple, version: str, debug=True) -> None: current_dir = os.getcwd() if solver_version := get_solver_version(version): arg_terms = get_arg_terms(keyword) files = get_target_files(current_dir) if files: run_command(solver_version=solver_version, arg_terms=arg_terms, target_input_files=files['target_input_files'], total_job_num=files['total_job_num'], debug=debug)
def test_get_target_files_code_exit(self, mocker, tmpdir, inpfile_dirlist): from runabq import files code = 'x' # exit mocker.patch.object(files, '_get_input_files', return_value=inpfile_dirlist) mocker.patch.object(files, '_display_file_list', return_value=None) mocker.patch.object(files, '_get_file_code', return_value=code) current_dir = tmpdir.mkdir('runabq_test_currentdir') result = files.get_target_files(current_dir) expected = dict() assert result == expected
def test_get_target_files_code_all(self, mocker, tmpdir, inpfile_dirlist): from runabq import files code = 'a' # all mocker.patch.object(files, '_get_input_files', return_value=inpfile_dirlist) mocker.patch.object(files, '_display_file_list', return_value=None) mocker.patch.object(files, '_get_file_code', return_value=code) current_dir = tmpdir.mkdir('runabq_test_currentdir') result_dict = files.get_target_files(current_dir) result = [a for a in result_dict['target_input_files']] expected = [target['file_name'] for target in inpfile_dirlist] assert set(result) == set(expected)
def test_get_target_files(self, mocker, tmpdir, code, expected, inpfile_dirlist): from runabq import files mocker.patch.object(files, '_get_input_files', return_value=inpfile_dirlist) mocker.patch.object(files, '_display_file_list', return_value=None) mocker.patch.object(files, '_get_file_code', return_value=code) current_dir = tmpdir.mkdir('runabq_test_currentdir') result = files.get_target_files(current_dir) result_target_files = [a for a in result['target_input_files']] expected_target_files = [b for b in expected['target_input_files']] assert result_target_files == expected_target_files assert result['total_job_num'] == expected['total_job_num']