[PATCH 1/3] tests: Support enum property type

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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():
+                        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}')
-- 
2.25.1




[Index of Archives]     [Linux Samsung SOC]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux