Skip to content

Commit

Permalink
extend test suite to cover NesteTypes of NamespacedTypes
Browse files Browse the repository at this point in the history
Signed-off-by: Mikael Arguedas <[email protected]>
  • Loading branch information
mikaelarguedas committed Apr 1, 2019
1 parent 63d8474 commit ad65970
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 1 deletion.
2 changes: 1 addition & 1 deletion rosidl_runtime_py/rosidl_runtime_py/import_message.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,5 +20,5 @@

def import_message_from_namespaced_type(message_type: NamespacedType) -> Any:
module = importlib.import_module(
'.'.join(message_type.basetype.namespaces))
'.'.join(message_type.basetype.namespaces))
return getattr(module, message_type.basetype.name)
18 changes: 18 additions & 0 deletions rosidl_runtime_py/test/rosidl_runtime_py/test_set_message.py
Original file line number Diff line number Diff line change
Expand Up @@ -92,3 +92,21 @@ def test_set_message_fields_invalid():
invalid_type['int32_value'] = 'this is not an integer'
with pytest.raises(ValueError):
set_message_fields(msg, invalid_type)


def test_set_nested_namespaced_fields():
msg_list = message_fixtures.get_msg_dynamic_array_nested()
msg0 = msg_list[0]
test_values = {
'primitive_values': [
{'string_value': 'foo', 'int8_value': 42},
{'string_value': 'bar', 'int8_value': 11}
]
}
set_message_fields(msg0, test_values)
assert msg0.primitive_values[0].string_value == 'foo'
assert msg0.primitive_values[0].int8_value == 42
assert msg0.primitive_values[0].uint8_value == 0
assert msg0.primitive_values[1].string_value == 'bar'
assert msg0.primitive_values[1].int8_value == 11
assert msg0.primitive_values[1].uint8_value == 0

0 comments on commit ad65970

Please sign in to comment.