[kms-test] [PATCH 04/10] kmstest: Move props value formatting to AtomicRequest

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

 



Centralize props value formatting in the AtomicRequest.add() function to
avoid having to call it manually through the code base.

Signed-off-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
---
 tests/kmstest.py | 18 ++++++++++--------
 1 file changed, 10 insertions(+), 8 deletions(-)

diff --git a/tests/kmstest.py b/tests/kmstest.py
index 14e28cd47fbd..2afaa513aa4d 100755
--- a/tests/kmstest.py
+++ b/tests/kmstest.py
@@ -258,15 +258,20 @@ class AtomicRequest(pykms.AtomicReq):
         self.__test = test
         self.__props = {}
 
+    def __format_props(self, props):
+        return {k: v & ((1 << 64) - 1) for k, v in props.items()}
+
     def add(self, obj, *kwargs):
         if obj.id not in self.__props:
             self.__props[obj.id] = {}
-        props = self.__props[obj.id]
+        obj_props = self.__props[obj.id]
 
         if len(kwargs) == 1 and isinstance(kwargs[0], collections.abc.Mapping):
-            props.update(kwargs[0])
+            props = self.__format_props(kwargs[0])
         elif len(kwargs) == 2:
-            props[kwargs[0]] = kwargs[1]
+            props = self.__format_props({ kwargs[0]: = kwargs[1] })
+
+        obj_props.update(props)
 
         super().add(obj, *kwargs)
 
@@ -309,9 +314,6 @@ class KMSTest(object):
     def __del__(self):
         self.logger.close()
 
-    def __format_props(self, props):
-        return {k: v & ((1 << 64) - 1) for k, v in props.items()}
-
     def atomic_crtc_disable(self, crtc, sync=True):
         req = AtomicRequest(self)
         req.add(crtc, {'ACTIVE': 0, 'MODE_ID': 0})
@@ -368,7 +370,7 @@ class KMSTest(object):
 
     def atomic_plane_set(self, plane, crtc, source, destination, fb, sync=False):
         req = AtomicRequest(self)
-        req.add(plane, self.__format_props({
+        req.add(plane, {
                     'FB_ID': fb.id,
                     'CRTC_ID': crtc.id,
                     'SRC_X': int(source.left * 65536),
@@ -379,7 +381,7 @@ class KMSTest(object):
                     'CRTC_Y': destination.top,
                     'CRTC_W': destination.width,
                     'CRTC_H': destination.height,
-        }))
+        })
         if sync:
             return req.commit_sync()
         else:
-- 
Regards,

Laurent Pinchart




[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