Ensure CompositeDevice._order has deterministic behaviour

... by sorting the kwargs, if no _order was specifically supplied.
This commit is contained in:
Andrew Scheller
2016-04-07 17:50:00 +01:00
parent 4f7e1f003e
commit 53dc1750c1

View File

@@ -261,7 +261,7 @@ class CompositeDevice(Device):
self._tuple = None
self._order = kwargs.pop('_order', None)
if self._order is None:
self._order = kwargs.keys()
self._order = sorted(kwargs.keys())
self._order = tuple(self._order)
for missing_name in set(kwargs.keys()) - set(self._order):
raise CompositeDeviceBadOrder('%s missing from _order' % missing_name)