From af80345ff66c8fbfde7153fcdab9b77e5fb3aa22 Mon Sep 17 00:00:00 2001 From: cerberus Date: Tue, 30 Sep 2025 17:21:12 +0200 Subject: [PATCH] refactor get_standard_folder_name() and added proper docstring --- refit/src/modules/librefit.py | 56 ++++++++++++++--------------------- 1 file changed, 23 insertions(+), 33 deletions(-) diff --git a/refit/src/modules/librefit.py b/refit/src/modules/librefit.py index 2dbd192..756b54d 100644 --- a/refit/src/modules/librefit.py +++ b/refit/src/modules/librefit.py @@ -15,43 +15,34 @@ def get_standard_name_number(current_number, number_str_length): def get_standard_folder_name(name) -> str: - """Takes the --name argument as input and returns an default value if no name is provided - or takes the first element of the list, passed to the argument. + """Returnes a standard name either from a list or the default value. + This function sanitizes the input, which gets passed as a list or None from + argparse. The function either chooses the first entry of the list, given to + the --name argument or returns the default value 'directory' - Example: - None -> . - ["directory"] -> dirctory - ["folder", "directory"] -> folder - - Returns str + Args: + name (list[str] | None): A list of names if passed to the --name argument + or None if no name is passed. + + Returns: + str: The file name. Returns 'file' as default value if name argument is 'None' + otherwise the first element of the list. + + Examples: + >>> get_standard_file_name(None) + 'file' + >>> get_standard_file_name(["example"]) + 'example' + >>> get_standard_file_name(["directory_name", "example"]) + 'directory_name' """ - logger.debug("get_standard_folder_name() call") - if name is None: - standard_folder_name = "directory" - logger.info( - f"No name for folder assigned, continue with default value '{standard_folder_name}'." - ) - else: - logger.debug( - f"FUNC: get_standard_folder_name() Properties of name='{name}': Type: {type(name)}, Length: {len(name)}" - ) - # Checks if multiple names are passed to the --name argument - # if so, only the first one gets used. - if len(name) > 1: - _NAMES_WARNING = f"{len(name)} names given, only one required.\nContinuing with '{name[0]}' as name." - logger.warning("FUNC: get_standard_folder_name()" + _NAMES_WARNING) - print(_NAMES_WARNING) - standard_folder_name = name[0] + logger.debug(f"FUNC: get_standard_folder_name() MSG: entered function with value: '{name}'") + standard_folder_name = name[0] if name is not None else "directory" + + logger.debug(f"FUNC: get_standard_folder_name() MSG: exiting function with folder name: '{standard_folder_name}'") - logger.debug( - f"FUNC: get_standard_folder_name() Properties of folder name '{standard_folder_name}': Type: {type(standard_folder_name)}" - ) - else: - standard_folder_name = name[0] - logger.debug("Continuing with expected input") - logger.debug("FUNC: get_standard_folder_name() exit.") return standard_folder_name @@ -87,4 +78,3 @@ def get_standard_file_name(name) -> str: return standard_file_name -#test \ No newline at end of file