From 1749035f7218c9f96d6597a4bda0edd35d5cbb3a Mon Sep 17 00:00:00 2001 From: Hakan Calim <hakan.calim@fau.de> Date: Tue, 23 Jan 2024 15:48:38 +0100 Subject: [PATCH] NAT-410: added method to validate tt number --- gso/utils/helpers.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gso/utils/helpers.py b/gso/utils/helpers.py index 8c28dd25..6927da89 100644 --- a/gso/utils/helpers.py +++ b/gso/utils/helpers.py @@ -271,3 +271,24 @@ def validate_interface_name_list(interface_name_list: list, vendor: str) -> list ) raise ValueError(error_msg) return interface_name_list + + +def validate_tt_number(tt_number: str) -> str: + """Validate a string to match a specific pattern. + + This method checks if the input string starts with 'TT#' and is followed by exactly 16 digits. + + :param str tt_number: The TT number as string to validate + + :return str: The tt number string, if tt number match was successful, otherwise it will throw a ValueError + exception. + """ + pattern = r"^TT#\d{16}$" + if not bool(re.match(pattern, tt_number)): + err_msg = ( + f"The given TT number: {tt_number} is not valid. " + f" A valid TT number starts with 'TT#' followed by 16 digits." + ) + raise ValueError(err_msg) + + return tt_number -- GitLab