From 2eb6d2010097041178ce88a98353507c6eaadcbb Mon Sep 17 00:00:00 2001 From: Matheus Felipe <50463866+matheusfelipeog@users.noreply.github.com> Date: Tue, 11 Jan 2022 04:33:18 -0300 Subject: [PATCH] Implement functions to check duplicate links --- scripts/validate/links.py | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/scripts/validate/links.py b/scripts/validate/links.py index b7895097..45bd174e 100644 --- a/scripts/validate/links.py +++ b/scripts/validate/links.py @@ -32,6 +32,31 @@ def find_links_in_file(filename: str) -> List[str]: return links +def check_duplicate_links(links: List[str]) -> bool: + """Check for duplicated links and return True or False.""" + + print('Checking for duplicated links...') + + seen = {} + duplicates = [] + has_duplicate = False + + for link in links: + if link not in seen: + seen[link] = 1 + else: + if seen[link] == 1: + duplicates.append(link) + + if not duplicates: + print(f'No duplicate links.') + else: + print(f'Found duplicate links: {duplicates}') + has_duplicate = True + + return has_duplicate + + if __name__ == '__main__': num_args = len(sys.argv) @@ -40,3 +65,5 @@ if __name__ == '__main__': sys.exit(1) links = find_links_in_file(sys.argv[1]) + + has_duplicate = check_duplicate_links(links)