Browse Source

Refactor duplicate link checker

pull/3011/head
Matheus Felipe 2 years ago
parent
commit
d728eeddbc
No known key found for this signature in database GPG Key ID: AA785C523274872F
1 changed files with 16 additions and 11 deletions
  1. +16
    -11
      scripts/validate/links.py

+ 16
- 11
scripts/validate/links.py View File

@@ -2,7 +2,7 @@

import sys
import re
from typing import List
from typing import List, Tuple


def find_links_in_text(text: str) -> List[str]:
@@ -32,10 +32,11 @@ 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."""
def check_duplicate_links(links: List[str]) -> Tuple[bool, List]:
"""Check for duplicated links.

print('Checking for duplicated links...')
Returns a tuple with True or False and duplicate list.
"""

seen = {}
duplicates = []
@@ -48,13 +49,10 @@ def check_duplicate_links(links: List[str]) -> bool:
if seen[link] == 1:
duplicates.append(link)

if not duplicates:
print(f'No duplicate links.')
else:
print(f'Found duplicate links: {duplicates}')
if duplicates:
has_duplicate = True
return has_duplicate

return (has_duplicate, duplicates)


if __name__ == '__main__':
@@ -66,4 +64,11 @@ if __name__ == '__main__':

links = find_links_in_file(sys.argv[1])

has_duplicate = check_duplicate_links(links)
print('Checking for duplicate links...')

has_duplicate_link, duplicates_links = check_duplicate_links(links)

if has_duplicate_link:
print(f'Found duplicate links: {duplicates_links}')
else:
print('No duplicate links.')

Loading…
Cancel
Save