Skip to content

Commit

Permalink
chore: add test
Browse files Browse the repository at this point in the history
  • Loading branch information
russkel committed Nov 3, 2024
1 parent 9483332 commit 0c3c97c
Showing 1 changed file with 18 additions and 1 deletion.
19 changes: 18 additions & 1 deletion test/rosidl_runtime_py/test_set_message.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,12 @@

import builtins
import copy
import yaml

from builtin_interfaces.msg import Time
import pytest
import rosidl_parser.definition
from rosidl_runtime_py import set_message_fields
from rosidl_runtime_py import set_message_fields, message_to_yaml
from std_msgs.msg import Header
from test_msgs import message_fixtures

Expand Down Expand Up @@ -140,6 +141,22 @@ def test_set_message_fields_partial():
assert getattr(modified_msg, attr) == getattr(original_msg, attr)


def test_set_message_fields_from_yaml():
original_msg = message_fixtures.get_msg_basic_types()[1]
original_yaml = message_to_yaml(original_msg)
values = yaml.safe_load(original_yaml)

modified_msg = message_fixtures.get_msg_basic_types()[0]
set_message_fields(modified_msg, values)

for attr in original_msg.get_fields_and_field_types().keys():
# Remove underscore prefix
if attr in values:
assert getattr(modified_msg, attr) == values[attr]
else:
assert getattr(modified_msg, attr) == getattr(original_msg, attr)


def test_set_message_fields_full():
msg_list = message_fixtures.get_msg_basic_types()
msg0 = msg_list[0]
Expand Down

0 comments on commit 0c3c97c

Please sign in to comment.