def testprintmessageset(self):
   message = unittest_mset_pb2.testmessagesetcontainer()
   ext1 = unittest_mset_pb2.testmessagesetextension1.message_set_extension
   ext2 = unittest_mset_pb2.testmessagesetextension2.message_set_extension
   message.message_set.extensions[ext1].i = 23
   message.message_set.extensions[ext2].str = 'foo'
   self.comparetogoldentext(text_format.messagetostring(message),
     'message_set {\n'
     '  [protobuf_unittest.testmessagesetextension1] {\n'
     '    i: 23\n'
     '  }\n'
     '  [protobuf_unittest.testmessagesetextension2] {\n'
     '    str: \"foo\"\n'
     '  }\n'
     '}\n')
 def testprintmessagesetasoneline(self):
   message = unittest_mset_pb2.testmessagesetcontainer()
   ext1 = unittest_mset_pb2.testmessagesetextension1.message_set_extension
   ext2 = unittest_mset_pb2.testmessagesetextension2.message_set_extension
   message.message_set.extensions[ext1].i = 23
   message.message_set.extensions[ext2].str = 'foo'
   self.comparetogoldentext(
       text_format.messagetostring(message, as_one_line=true),
       'message_set {'
       ' [protobuf_unittest.testmessagesetextension1] {'
       ' i: 23'
       ' }'
       ' [protobuf_unittest.testmessagesetextension2] {'
       ' str: \"foo\"'
       ' }'
       ' }')
  def testmergemessageset(self):
    message = unittest_pb2.testalltypes()
    text = ('repeated_uint64: 1\n'
            'repeated_uint64: 2\n')
    text_format.merge(text, message)
    self.assertequal(1, message.repeated_uint64[0])
    self.assertequal(2, message.repeated_uint64[1])

    message = unittest_mset_pb2.testmessagesetcontainer()
    text = ('message_set {\n'
            '  [protobuf_unittest.testmessagesetextension1] {\n'
            '    i: 23\n'
            '  }\n'
            '  [protobuf_unittest.testmessagesetextension2] {\n'
            '    str: \"foo\"\n'
            '  }\n'
            '}\n')
    text_format.merge(text, message)
    ext1 = unittest_mset_pb2.testmessagesetextension1.message_set_extension
    ext2 = unittest_mset_pb2.testmessagesetextension2.message_set_extension
    self.assertequals(23, message.message_set.extensions[ext1].i)
    self.assertequals('foo', message.message_set.extensions[ext2].str)