From 5d1d402c9437206aa178ddf2d2e29d1ef65e874a Mon Sep 17 00:00:00 2001 From: Douglas Raillard Date: Tue, 10 Oct 2023 10:21:25 +0100 Subject: [PATCH] lisa.wlgen.rta: Use ComposableMultiConcretePropertyBase._ATTRIBUTES types FEATURE Use the type of each attribute to process user input. For example, this will ensure uclamp values are integers and not user-provided floats. --- lisa/wlgen/rta.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/lisa/wlgen/rta.py b/lisa/wlgen/rta.py index 053e7045d..a653152f7 100644 --- a/lisa/wlgen/rta.py +++ b/lisa/wlgen/rta.py @@ -2341,10 +2341,12 @@ class ComposableMultiConcretePropertyBase(MultiConcreteProperty): def __init__(self, **kwargs): def check(key, val): - if key in self._ATTRIBUTES: - return val - else: + try: + desc = self._ATTRIBUTES[key] + except KeyError: raise TypeError(f'Unknown parameter "{key}". Only {sorted(self._ATTRIBUTES)} are allowed') + else: + return desc.get('type_', lambda x: x)(val) attrs = { key: check(key, val) -- GitLab