Hi Hayama-san, Thank you for the patch. On Mon, Jul 04, 2022 at 11:56:30AM +0900, Takanari Hayama wrote: > Add a support for enum property type to AtomicRequest. > > Signed-off-by: Takanari Hayama <taki@xxxxxxxxxx> > --- > tests/kmstest.py | 12 +++++++++++- > 1 file changed, 11 insertions(+), 1 deletion(-) > > diff --git a/tests/kmstest.py b/tests/kmstest.py > index 11cc328b5b32..224c160e32fa 100755 > --- a/tests/kmstest.py > +++ b/tests/kmstest.py > @@ -269,8 +269,18 @@ class AtomicRequest(pykms.AtomicReq): > > min, max = prop.values > v = min + int((max - min) * int(v[:-1]) / 100) > - else: > + elif v.isnumeric(): > v = int(v) > + else: > + prop = obj.get_prop(k) > + if prop.type != pykms.PropertyType.Enum: > + raise RuntimeError(f'Unsupported property type {prop.type} for value {v}') > + for value, mode in prop.enums.items(): I'd replace "mode" with "name" here. Apart from that, Reviewed-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> I'll change this when applying the patch. > + if mode == v: > + v = value > + break > + else: > + raise RuntimeError(f'Enum value with name "{v}" not found in property {k}') > > if not isinstance(v, int): > raise RuntimeError(f'Unsupported value type {type(v)} for property {k}') -- Regards, Laurent Pinchart