def test_record_reader(reader_path): """ Record reader. """ freader = record.RecordReader(reader_path) time.sleep(1) print('+' * 80) print('+++ Begin to read +++') count = 0 for channel_name, msg, datatype, timestamp in freader.read_messages(): count += 1 print('=' * 80) print('read [%d] messages' % count) print('channel_name -> %s' % channel_name) print('msgtime -> %d' % timestamp) print('msgnum -> %d' % freader.get_messagenumber(channel_name)) print('msgtype -> %s' % datatype) print('message is -> %s' % msg) print('***After parse(if needed),the message is ->') if datatype == MSG_TYPE: msg_new = SimpleMessage() msg_new.ParseFromString(msg) print(msg_new) elif datatype == MSG_TYPE_CHATTER: msg_new = Chatter() msg_new.ParseFromString(msg) print(msg_new)
def test_read_write(self): """ Unit test of reader. """ self.assertTrue(cyber.ok()) # Read. reader_node = cyber.Node("listener") reader = reader_node.create_reader("channel/chatter", SimpleMessage, self.callback) self.assertEqual(reader.name, "channel/chatter") self.assertEqual(reader.data_type, SimpleMessage) self.assertEqual(SimpleMessage.DESCRIPTOR.full_name, "apollo.common.util.test.SimpleMessage") # Write. msg = SimpleMessage() msg.text = "talker:send Alex!" msg.integer = 0 self.assertTrue(cyber.ok()) writer_node = cyber.Node("writer") writer = writer_node.create_writer("channel/chatter", SimpleMessage, 7) self.assertEqual(writer.name, "channel/chatter") self.assertEqual(writer.data_type, "apollo.common.util.test.SimpleMessage") self.assertTrue(writer.write(msg)) # Wait for data to be processed by callback function. time.sleep(0.1)
def test_record_writer(writer_path): """ record writer. """ fwriter = record.RecordWriter() if not fwriter.open(writer_path): print "writer open failed!" return print "+++ begin to writer..." fwriter.write_channel(CHAN_1, MSG_TYPE, STR_10B) fwriter.write_message(CHAN_1, STR_10B, 1000) msg = SimpleMessage() msg.text = "AAAAAA" file_desc = msg.DESCRIPTOR.file proto = FileDescriptorProto() file_desc.CopyToProto(proto) proto.name = file_desc.name desc_str = proto.SerializeToString() fwriter.write_channel('chatter_a', msg.DESCRIPTOR.full_name, desc_str) fwriter.write_message('chatter_a', msg, 998, False) fwriter.write_message("chatter_a", msg.SerializeToString(), 999) fwriter.close()
def test_record_reader(reader_path): """ record reader. """ freader = record.RecordReader(reader_path) time.sleep(1) print "+" * 80 print "+++begin to read..." count = 1 for channelname, msg, datatype, timestamp in freader.read_messages(): print "=" * 80 print "read [%d] msg" % count print "chnanel_name -> %s" % channelname print "msgtime -> %d" % timestamp print "msgnum -> %d" % freader.get_messagenumber(channelname) print "msgtype -> %s" % datatype # print "pbdesc -> %s" % freader.get_protodesc(channelname) count = count + 1 print "msg is -> %s" % msg print "***after parse(if need),the msg is ->" if datatype == MSG_TYPE: msg_new = SimpleMessage() msg_new.ParseFromString(msg) print msg_new if datatype == MSG_TYPE_CHATTER: msg_new = Chatter() msg_new.ParseFromString(msg) print msg_new
def test_writer(self): """ unit test of writer. """ msg = SimpleMessage() msg.text = "talker:send Alex!" msg.integer = 0 self.assertTrue(cyber.ok()) test_node = cyber.Node("node_name1") writer = test_node.create_writer("channel/chatter", SimpleMessage, 7) self.assertEqual(writer.name, "channel/chatter") self.assertEqual(writer.data_type, "apollo.common.util.test.SimpleMessage") self.assertTrue(writer.write(msg))
def test_record_writer(writer_path): """ Record writer. """ fwriter = record.RecordWriter() fwriter.set_size_fileseg(0) fwriter.set_intervaltime_fileseg(0) if not fwriter.open(writer_path): print('Failed to open record writer!') return print('+++ Begin to writer +++') # Writer 2 SimpleMessage msg = SimpleMessage() msg.text = "AAAAAA" file_desc = msg.DESCRIPTOR.file proto = FileDescriptorProto() file_desc.CopyToProto(proto) proto.name = file_desc.name desc_str = proto.SerializeToString() print(msg.DESCRIPTOR.full_name) fwriter.write_channel( 'simplemsg_channel', msg.DESCRIPTOR.full_name, desc_str) fwriter.write_message('simplemsg_channel', msg, 990, False) fwriter.write_message('simplemsg_channel', msg.SerializeToString(), 991) # Writer 2 Chatter msg = Chatter() msg.timestamp = 99999 msg.lidar_timestamp = 100 msg.seq = 1 file_desc = msg.DESCRIPTOR.file proto = FileDescriptorProto() file_desc.CopyToProto(proto) proto.name = file_desc.name desc_str = proto.SerializeToString() print(msg.DESCRIPTOR.full_name) fwriter.write_channel('chatter_a', msg.DESCRIPTOR.full_name, desc_str) fwriter.write_message('chatter_a', msg, 992, False) msg.seq = 2 fwriter.write_message("chatter_a", msg.SerializeToString(), 993) fwriter.close()
def test_talker_class(): """ Test talker. """ msg = SimpleMessage() msg.text = "talker:send Alex!" msg.integer = 0 test_node = cyber.Node("node_name1") g_count = 1 writer = test_node.create_writer("channel/chatter", SimpleMessage, 6) while not cyber.is_shutdown(): time.sleep(1) g_count = g_count + 1 msg.integer = g_count print "=" * 80 print "write msg -> %s" % msg writer.write(msg)
def test_talker_class(): """ test talker. """ msg = SimpleMessage() msg.text = "talker:send Alex!" msg.integer = 0 test_node = cyber.Node("node_name1") g_count = 1 writer = test_node.create_writer("channel/chatter", SimpleMessage, 6) while not cyber.is_shutdown(): time.sleep(1) g_count = g_count + 1 msg.integer = g_count print "="*80 print "write msg -> %s" % msg writer.write(msg)