Go to the documentation of this file.00001
00002
00003 import rospy
00004 from jsk_network_tools.msg import AllTypeTest
00005 import unittest
00006
00007 def defaultMessage():
00008 msg = AllTypeTest()
00009 msg.bool_array[0] = True
00010 msg.uint8_atom = 12
00011 msg.uint8_array = "abcd"
00012 msg.int8_atom = 12
00013 msg.int8_array[0] = 12
00014 msg.uint16_atom = 12
00015 msg.uint16_array[0] = 12
00016 msg.uint32_atom = 12
00017 msg.uint32_array[0] = 12
00018 msg.int32_atom = 12
00019 msg.int32_array[0] = 12
00020 msg.uint64_atom = 12
00021 msg.uint64_array[0] = 12
00022 msg.int64_atom = 12
00023 msg.int64_array[0] = 12
00024 msg.float32_atom = 12
00025 msg.float32_array[0] = 12
00026 msg.float64_atom = 12
00027 msg.float64_array[0] = 12
00028 return msg
00029
00030 def timerCallback(event):
00031 msg = defaultMessage()
00032 pub.publish(msg)
00033
00034 relayed_message = None
00035 def messageCallback(msg):
00036 global relayed_message
00037 relayed_message = msg
00038
00039 class TestLowSpeed(unittest.TestCase):
00040 def test_topic_compare(self):
00041 global relayed_message
00042
00043 reference = defaultMessage()
00044 self.assertTrue(relayed_message.bool_atom == reference.bool_atom)
00045 for i in range(len(relayed_message.bool_array)):
00046 self.assertTrue(relayed_message.bool_array[i] == reference.bool_array[i])
00047 self.assertTrue(relayed_message.uint8_atom == reference.uint8_atom)
00048 print relayed_message.uint8_array
00049 print reference.uint8_array
00050 self.assertTrue(relayed_message.uint8_array == reference.uint8_array)
00051 self.assertTrue(relayed_message.int8_atom == reference.int8_atom)
00052 for i in range(len(relayed_message.int8_array)):
00053 self.assertTrue(relayed_message.int8_array[i] == reference.int8_array[i])
00054 self.assertTrue(relayed_message.uint16_atom == reference.uint16_atom)
00055 for i in range(len(relayed_message.uint16_array)):
00056 self.assertTrue(relayed_message.uint16_array[i] == reference.uint16_array[i])
00057 self.assertTrue(relayed_message.int32_atom == reference.int32_atom)
00058 for i in range(len(relayed_message.int32_array)):
00059 self.assertTrue(relayed_message.int32_array[i] == reference.int32_array[i])
00060 self.assertTrue(relayed_message.uint32_atom == reference.uint32_atom)
00061 for i in range(len(relayed_message.uint32_array)):
00062 self.assertTrue(relayed_message.uint32_array[i] == reference.uint32_array[i])
00063 self.assertTrue(relayed_message.int64_atom == reference.int64_atom)
00064 for i in range(len(relayed_message.int64_array)):
00065 self.assertTrue(relayed_message.int64_array[i] == reference.int64_array[i])
00066 self.assertTrue(relayed_message.uint64_atom == reference.uint64_atom)
00067 for i in range(len(relayed_message.uint64_array)):
00068 self.assertTrue(relayed_message.uint64_array[i] == reference.uint64_array[i])
00069 self.assertTrue(relayed_message.float32_atom == reference.float32_atom)
00070 for i in range(len(relayed_message.float32_array)):
00071 self.assertTrue(relayed_message.float32_array[i] == reference.float32_array[i])
00072 self.assertTrue(relayed_message.float64_atom == reference.float64_atom)
00073 for i in range(len(relayed_message.float64_array)):
00074 self.assertTrue(relayed_message.float64_array[i] == reference.float64_array[i])
00075
00076
00077 if __name__ == "__main__":
00078 import rostest
00079 rospy.init_node("test_all_type_low_speed")
00080 pub = rospy.Publisher("original", AllTypeTest)
00081 sub = rospy.Subscriber("relayed", AllTypeTest, messageCallback)
00082 rospy.Timer(rospy.Duration(0.5), timerCallback)
00083 rospy.loginfo("wait 10sec to acuumulate topics...")
00084 rospy.sleep(10)
00085 rostest.rosrun("jsk_network_tools", "test_low_speed", TestLowSpeed)
00086
00087