From f447f7c76e330ce9ea203e93929ecfa8cca75113 Mon Sep 17 00:00:00 2001 From: Matheus Felipe <50463866+matheusfelipeog@users.noreply.github.com> Date: Sun, 16 Jan 2022 23:38:14 -0300 Subject: [PATCH] Implement main function --- scripts/validate/format.py | 32 ++++++++++++++++++++++++++++---- 1 file changed, 28 insertions(+), 4 deletions(-) diff --git a/scripts/validate/format.py b/scripts/validate/format.py index 6c8681e9..8f88a7e4 100644 --- a/scripts/validate/format.py +++ b/scripts/validate/format.py @@ -1,6 +1,7 @@ # -*- coding: utf-8 -*- import re +import sys from typing import List, Tuple, Dict @@ -185,14 +186,11 @@ def check_entry(line_num: int, segments: List[str]) -> List[str]: return err_msgs -def check_file_format(filename: str) -> List[str]: +def check_file_format(lines: List[str]) -> List[str]: err_msgs = [] category_title_in_index = [] - with open(filename, mode='r', encoding='utf-8') as file: - lines = list(line.rstrip() for line in file) - alphabetical_err_msgs = check_alphabetical_order(lines) err_msgs.extend(alphabetical_err_msgs) @@ -248,3 +246,29 @@ def check_file_format(filename: str) -> List[str]: err_msgs.extend(entry_err_msgs) return err_msgs + + +def main(filename: str) -> None: + + with open(filename, mode='r', encoding='utf-8') as file: + lines = list(line.rstrip() for line in file) + + file_format_err_msgs = check_file_format(lines) + + if file_format_err_msgs: + for err_msg in file_format_err_msgs: + print(err_msg) + sys.exit(1) + + +if __name__ == '__main__': + + num_args = len(sys.argv) + + if num_args < 2: + print('No .md file passed (file should contain Markdown table syntax)') + sys.exit(1) + + filename = sys.argv[1] + + main(filename)