Skip to content

Commit

Permalink
Stop updating method parameter takes arguments, and check this behaviour
Browse files Browse the repository at this point in the history
The method writeable attribute should now be used to check if a method
takes parameter is writeable
  • Loading branch information
coretl committed Jun 12, 2018
1 parent da7e2f8 commit 648d0fd
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 10 deletions.
10 changes: 0 additions & 10 deletions malcolm/core/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -832,11 +832,6 @@ def __init__(self,
self.elements = self.set_elements(elements if elements else {})
self.required = self.set_required(required)

def set_writeable(self, writeable):
# type: (AWriteable) -> None
for v in self.elements.values():
v.set_writeable(writeable)

def set_elements(self, elements):
# type: (AElements) -> AElements
deserialized = OrderedDict()
Expand Down Expand Up @@ -885,11 +880,6 @@ def __init__(self,
self.defaults = self.set_defaults(defaults if defaults else {})
super(MethodModel, self).__init__(description, tags, writeable, label)

def set_writeable(self, writeable):
# type: (AWriteable) -> AWriteable
self.takes.set_writeable(writeable)
return super(MethodModel, self).set_writeable(writeable)

def set_takes(self, takes):
# type: (ATakes) -> ATakes
takes = deserialize_object(takes, MapMeta)
Expand Down
2 changes: 2 additions & 0 deletions tests/test_modules/test_builtin/test_statefulcontroller.py
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,8 @@ def test_init(self):
self.start_process()
assert list(self.b) == ['meta', 'health', 'state', 'disable', 'reset']
assert self.b.state.value == "Ready"
assert self.b.disable.writeable is True
assert self.b.reset.writeable is False

def test_reset_fails_from_ready(self):
self.start_process()
Expand Down
8 changes: 8 additions & 0 deletions tests/test_modules/test_scanning/test_runnablecontroller.py
Original file line number Diff line number Diff line change
Expand Up @@ -173,9 +173,17 @@ def prepare_half_run(self, duration=0.01, exception=0):
generator=compound, axesToMove=['x'], exceptionStep=exception)

def test_configure_run(self):
assert self.b.configure.writeable is True
assert self.b.configure.takes.elements["generator"].writeable is True
assert self.b.validate.takes.elements["generator"].writeable is True
assert self.b.validate.returns.elements["generator"].writeable is False
self.prepare_half_run()
self.checkSteps(2, 0, 6)
self.checkState(self.ss.ARMED)
assert self.b.configure.writeable is False
assert self.b.configure.takes.elements["generator"].writeable is True
assert self.b.validate.takes.elements["generator"].writeable is True
assert self.b.validate.returns.elements["generator"].writeable is False

self.b.run()
self.checkState(self.ss.ARMED)
Expand Down

0 comments on commit 648d0fd

Please sign in to comment.