From 6557c7b9b11b5fa27b3ba04a4629519feaacbc0b Mon Sep 17 00:00:00 2001 From: RGBCube <78925721+RGBCube@users.noreply.github.com> Date: Sun, 26 Jun 2022 18:04:45 +0300 Subject: [PATCH] Fix example string getting placed when there is no example --- tools/unschema/parser.py | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/tools/unschema/parser.py b/tools/unschema/parser.py index 18b326c..09a350b 100644 --- a/tools/unschema/parser.py +++ b/tools/unschema/parser.py @@ -129,15 +129,20 @@ def generate( param_annotation = f"NotRequired[{param_annotation}]" if not no_comments: - examples = (', '.join(str(ex) for ex in exs)).replace("\n", "\\n") if (exs := value.get("examples")) else "" + if examples := value.get("examples"): + s = "" if len(examples) == 1 else "s" - if (example := examples[:70]) != examples: - examples = f"{example}[...]" + examples = ", ".join([str(example) for example in examples]).replace("\n", "\\n") + + if (examples_short := examples[:70]) != examples: + examples = f"{examples_short}[...]" + + examples = f" # Example{s}: {examples}" if examples else "" typed_dict.extend( [ f" # Format: {fmt}" if (fmt := value.get("format")) else "", - f" # Example: {examples}" + examples ] )