jsk-ros-pkg / geneus

3 stars 16 forks source link

add test to check #59 #62

Closed k-okada closed 5 years ago

k-okada commented 5 years ago
 "t" if c.val == "True" else "nil"

rosmsg bool only accepts "True" or 1, true/TRUE is not allowed.

bool TRUE_FLAG_SYMBOL_true=true

or

bool TRUE_FLAG_SYMBOL_TRUE=TRUE

outputs

$ /opt/ros/melodic/lib/genpy/genmsg_py.py /home/user/geneus_ws/src/geneus/test/test.msg -Igeneus:/home/user/geneus_ws/src/geneus/test -p geneus -o /home/user/geneus_ws/src/geneus/test

ERROR: Unable to generate messages for package 'geneus': while processing '/home/user/geneus_ws/src/geneus/test/test.msg': /home/user/geneus_ws/src/geneus/test/test.msg: Invalid constant value: malformed string

But interestingly, "TRUE" and "true" is ok, i.e.

bool TRUE_FLAG=1
bool FALSE_FLAG=0
bool TRUE_FLAG_SYMBOL=True
bool FALSE_FLAG_SYMBOL=False
bool TRUE_FLAG_SYMBOL_true="true"
bool TRUE_FLAG_SYMBOL_TRUE="TRUE"

outputs,

class test(genpy.Message):
  _md5sum = "8a483e5c9534f6edd265d0415fd315e5"
  _type = "geneus/test"
  _has_header = False #flag to mark the presence of a Header object
  _full_text = """bool TRUE_FLAG=1
bool FALSE_FLAG=0
bool TRUE_FLAG_SYMBOL=True
bool FALSE_FLAG_SYMBOL=False
bool TRUE_FLAG_SYMBOL_true="true"
bool TRUE_FLAG_SYMBOL_TRUE="TRUE"
"""
  # Pseudo-constants
  TRUE_FLAG = True
  FALSE_FLAG = False
  TRUE_FLAG_SYMBOL = True
  FALSE_FLAG_SYMBOL = False
  TRUE_FLAG_SYMBOL_true = True
  TRUE_FLAG_SYMBOL_TRUE = True