From 31a9c1e817b1b97465a95246fc4230822d0ab50e Mon Sep 17 00:00:00 2001 From: Valeriia Danyliuk Date: Tue, 1 Aug 2023 13:42:30 +0300 Subject: [PATCH 1/2] Implemented "format_linter_error", "format_single_linter_file" and "format_linter_report" functions! --- app/main.py | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/app/main.py b/app/main.py index 20463c45..9f7f96c6 100644 --- a/app/main.py +++ b/app/main.py @@ -1,13 +1,23 @@ def format_linter_error(error: dict) -> dict: - # write your code here - pass + return { + "line": error["line_number"], + "column": error["column_number"], + "message": error["text"], + "name": error["code"], + "source": "flake8" + } def format_single_linter_file(file_path: str, errors: list) -> dict: - # write your code here - pass + return { + "errors": [format_linter_error(error) for error in errors], + "path": file_path, + "status": "failed" if errors else "passed" + } def format_linter_report(linter_report: dict) -> list: - # write your code here - pass + return [ + format_single_linter_file(file_path, errors) + for file_path, errors in linter_report.items() + ] \ No newline at end of file From 18afcd7c50b25bb5d67628af095d2050b1304b90 Mon Sep 17 00:00:00 2001 From: Valeriia Danyliuk Date: Tue, 1 Aug 2023 14:01:36 +0300 Subject: [PATCH 2/2] Fixed possible KeyError and added a blank line at the end of the file! --- app/main.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/app/main.py b/app/main.py index 9f7f96c6..9e0f3cfd 100644 --- a/app/main.py +++ b/app/main.py @@ -1,9 +1,9 @@ def format_linter_error(error: dict) -> dict: return { - "line": error["line_number"], - "column": error["column_number"], - "message": error["text"], - "name": error["code"], + "line": error.get("line_number"), + "column": error.get("column_number"), + "message": error.get("text"), + "name": error.get("code"), "source": "flake8" } @@ -20,4 +20,4 @@ def format_linter_report(linter_report: dict) -> list: return [ format_single_linter_file(file_path, errors) for file_path, errors in linter_report.items() - ] \ No newline at end of file + ]