From 8145a3432eee45f15e05f0b00a7f7af4a540a11a Mon Sep 17 00:00:00 2001 From: Alexander Fischer Date: Tue, 14 Sep 2021 12:26:21 +0200 Subject: [PATCH] Reduce --- .vscode/settings.json | 4 --- pre_commit_hooks/pretty_format_json.py | 37 +++++++------------------- 2 files changed, 10 insertions(+), 31 deletions(-) delete mode 100644 .vscode/settings.json diff --git a/.vscode/settings.json b/.vscode/settings.json deleted file mode 100644 index e137fad..0000000 --- a/.vscode/settings.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "python.testing.unittestEnabled": false, - "python.testing.pytestEnabled": true -} \ No newline at end of file diff --git a/pre_commit_hooks/pretty_format_json.py b/pre_commit_hooks/pretty_format_json.py index 15dbc38..0ba8998 100644 --- a/pre_commit_hooks/pretty_format_json.py +++ b/pre_commit_hooks/pretty_format_json.py @@ -36,20 +36,11 @@ def _get_pretty_format( return pairs transformed_pairs = [] for (key, value) in pairs: - if key not in sort_values: - # No sorting requested - transformed_pairs.append((key, value)) - continue - if not isinstance(value, List): - # Value is no list, sorting makes no sense - transformed_pairs.append((key, value)) - continue - if len(set([type(x) for x in value])) > 1: - # Only sort if all list entries are of the same type - transformed_pairs.append((key, value)) - continue - if any([isinstance(x, (List, Mapping)) for x in value]): - # Only sort if all list entries are no list or mapping + if (key not in sort_values # No sorting requested + or not isinstance(value, List) # Value is no list, sorting makes no sense + or len(set([type(x) for x in value])) > 1 # Only sort if all list entries are of the same type + or any([isinstance(x, (List, Mapping)) for x in value]) # Only sort if all list entries are no list or mapping + ): transformed_pairs.append((key, value)) continue transformed_pairs.append((key, sorted(value))) @@ -61,19 +52,11 @@ def _get_pretty_format( print(pairs) transformed_pairs = [] for (key, value) in pairs: - if key not in unique_values: - transformed_pairs.append((key, value)) - continue - if not isinstance(value, List): - # Value is no list, sorting makes no sense - transformed_pairs.append((key, value)) - continue - if len(set([type(x) for x in value])) > 1: - # Only sort if all list entries are of the same type - transformed_pairs.append((key, value)) - continue - if any([isinstance(x, (List, Mapping)) for x in value]): - # Only sort if all list entries are no list or mapping + if (key not in unique_values # No unification requested + or not isinstance(value, List) # Value is no list, unification makes no sense + or len(set([type(x) for x in value])) > 1 # Only unify if all list entries are of the same type + or any([isinstance(x, (List, Mapping)) for x in value]) # Only unify if all list entries are no list or mapping + ): transformed_pairs.append((key, value)) continue transformed_pairs.append((key, list(dict.fromkeys(value))))