summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHugo Osvaldo Barrera <hugo@whynothugo.nl>2023-09-26 12:14:40 +0200
committerHugo Osvaldo Barrera <hugo@whynothugo.nl>2023-09-26 12:14:40 +0200
commit16e5c2eafc351df7f5841ec65c39261b231ab681 (patch)
tree8bf840854a086ebe203b2fffcbb0de1ff7798955
parenteb00b8121208929b7b2b3c5d2431c8e344170672 (diff)
Add type hints for CanvasTranslator
-rw-r--r--tests/ui/canvas_render.py10
1 files changed, 6 insertions, 4 deletions
diff --git a/tests/ui/canvas_render.py b/tests/ui/canvas_render.py
index bb92fdeb..3915296a 100644
--- a/tests/ui/canvas_render.py
+++ b/tests/ui/canvas_render.py
@@ -1,3 +1,5 @@
+from __future__ import annotations
+
import io
import click
@@ -6,16 +8,16 @@ import click
class CanvasTranslator:
"""Translates a canvas object into a printable string."""
- def __init__(self, canvas, palette=None):
+ def __init__(self, canvas, palette: dict[str, str] | None = None) -> None:
"""currently only support foreground colors, so palette is
a dictionary of attributes and foreground colors"""
self._canvas = canvas
- self._palette = {}
+ self._palette : dict[str, tuple[bool, str]]= {}
if palette:
for key, color in palette.items():
self.add_color(key, color)
- def add_color(self, key, color):
+ def add_color(self, key: str, color: str) -> None:
if color.startswith('#'): # RGB colour
r = color[1:3]
g = color[3:5]
@@ -30,7 +32,7 @@ class CanvasTranslator:
self._palette[key] = value # (is_ansi, color)
- def transform(self):
+ def transform(self) -> str:
self.output = io.StringIO()
for row in self._canvas.content():
# self.spaces = 0