fix feature for removing commands
from a bug introduced in the 'fix parameter inheritance' change Change-Id: I757c354130077d8838aac864b21b4f81caa9bccf Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/27096 Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de> Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de> Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch>
This commit is contained in:
parent
ad7cfe4ea0
commit
45dd14a72c
@ -68,11 +68,15 @@ class HasAccessibles(HasProperties):
|
|||||||
override_values.pop(key, None)
|
override_values.pop(key, None)
|
||||||
elif key in accessibles:
|
elif key in accessibles:
|
||||||
override_values[key] = value
|
override_values[key] = value
|
||||||
for aname, aobj in accessibles.items():
|
for aname, aobj in list(accessibles.items()):
|
||||||
if aname in override_values:
|
if aname in override_values:
|
||||||
aobj = aobj.copy()
|
aobj = aobj.copy()
|
||||||
|
value = override_values[aname]
|
||||||
|
if value is None:
|
||||||
|
accessibles.pop(aname)
|
||||||
|
continue
|
||||||
aobj.merge(merged_properties[aname])
|
aobj.merge(merged_properties[aname])
|
||||||
aobj.override(override_values[aname])
|
aobj.override(value)
|
||||||
# replace the bare value by the created accessible
|
# replace the bare value by the created accessible
|
||||||
setattr(cls, aname, aobj)
|
setattr(cls, aname, aobj)
|
||||||
else:
|
else:
|
||||||
|
@ -346,3 +346,16 @@ def test_command_config():
|
|||||||
'argument': {'type': 'bool'},
|
'argument': {'type': 'bool'},
|
||||||
'result': {'type': 'bool'},
|
'result': {'type': 'bool'},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
def test_command_none():
|
||||||
|
srv = ServerStub({})
|
||||||
|
|
||||||
|
class Mod(Drivable):
|
||||||
|
pass
|
||||||
|
|
||||||
|
class Mod2(Drivable):
|
||||||
|
stop = None
|
||||||
|
|
||||||
|
assert 'stop' in Mod('o', logger, {'description': ''}, srv).accessibles
|
||||||
|
assert 'stop' not in Mod2('o', logger, {'description': ''}, srv).accessibles
|
||||||
|
Loading…
x
Reference in New Issue
Block a user