Conversation
…kage names prepended like get_msg_text(_,raw=False) does
…age names prepended like get_srv_text(,raw=False) does
tools/rosmsg/test/test_rosmsg.py
Outdated
There was a problem hiding this comment.
Consider using the test_message_package variable to format this string instead of the raw string here and elsewhere.
|
Ran tests manually and the rosmsg tests pass. This was the output of On origin/enable_tests, rosmsg has 3 failures. Changing from I'm not a maintainer on this package, will defer to @gerkey and @dirk-thomas. |
|
Thanks for running the tests @jacquelinekay |
|
Thanks for the fixes! Given how long ago the behavior change was made, I'd prefer to stick with the current behavior, however imperfect it might be. It's more dangerous to "fix" the behavior to match the old tests, which could break somebody's system. |
Building on work related to issue #709
From what I can see, rosmsg.get_msg_text() used to have a 'fulltext' option which would refer to the msg types with their package name included ('test_rosmaster/Empty empty\n' vs 'Empty empty\n', as in the error output). This was removed in ef2beb7, but now having the parameter raw=False returns msgs in fulltext, while raw=True doesn't.
The tests are failing because they don't expect this discrepancy.
The current behaviour is:
With raw=False, messages are: recursive, whitespace removed, fulltext.
with raw=True, messages are not recursive, with whitespace not removed, and not fulltext.
I updated the tests to match the current behaviour of get_msg_text/get_srv_text, but it's possible that the appropriate fix is actually the other way around, as, judging from this comment in the previously failing test, the behaviour when raw=False vs True used to be different (with respect to fulltext).