def testprintnestedmessageasoneline(self): message = unittest_pb2.testalltypes() msg = message.repeated_nested_message.add() msg.bb = 42; self.comparetogoldentext( text_format.messagetostring(message, as_one_line=true), 'repeated_nested_message { bb: 42 }')
def testmergeallextensions(self): message = unittest_pb2.testallextensions() test_util.setallextensions(message) ascii_text = text_format.messagetostring(message) parsed_message = unittest_pb2.testallextensions() text_format.merge(ascii_text, parsed_message) self.assertequal(message, parsed_message)
def testprintrawutf8string(self): message = unittest_pb2.testalltypes() message.repeated_string.append(u'\u00fc\ua71f') text = text_format.messagetostring(message, as_utf8 = true) self.comparetogoldentext(text, 'repeated_string: "\303\274\352\234\237"\n') parsed_message = unittest_pb2.testalltypes() text_format.merge(text, parsed_message) self.assertequals(message, parsed_message)
def testmergeallfields(self): message = unittest_pb2.testalltypes() test_util.setallfields(message) ascii_text = text_format.messagetostring(message) parsed_message = unittest_pb2.testalltypes() text_format.merge(ascii_text, parsed_message) self.assertequal(message, parsed_message) test_util.expectallfieldsset(self, message)
def testprintbadenumvalue(self): message = unittest_pb2.testalltypes() message.optional_nested_enum = 100 message.optional_foreign_enum = 101 message.optional_import_enum = 102 self.comparetogoldentext( text_format.messagetostring(message), 'optional_nested_enum: 100\n' 'optional_foreign_enum: 101\n' 'optional_import_enum: 102\n')
def testprintbadenumvalueextensions(self): message = unittest_pb2.testallextensions() message.extensions[unittest_pb2.optional_nested_enum_extension] = 100 message.extensions[unittest_pb2.optional_foreign_enum_extension] = 101 message.extensions[unittest_pb2.optional_import_enum_extension] = 102 self.comparetogoldentext( text_format.messagetostring(message), '[protobuf_unittest.optional_nested_enum_extension]: 100\n' '[protobuf_unittest.optional_foreign_enum_extension]: 101\n' '[protobuf_unittest.optional_import_enum_extension]: 102\n')
def testprintrepeatedfieldsasoneline(self): message = unittest_pb2.testalltypes() message.repeated_int32.append(1) message.repeated_int32.append(1) message.repeated_int32.append(3) message.repeated_string.append("google") message.repeated_string.append("zurich") self.comparetogoldentext( text_format.messagetostring(message, as_one_line=true), 'repeated_int32: 1 repeated_int32: 1 repeated_int32: 3 ' 'repeated_string: "google" repeated_string: "zurich"')
def testroundtripexoticasoneline(self): message = unittest_pb2.testalltypes() message.repeated_int64.append(-9223372036854775808) message.repeated_uint64.append(18446744073709551615) message.repeated_double.append(123.456) message.repeated_double.append(1.23e22) message.repeated_double.append(1.23e-18) message.repeated_string.append('\000\001\a\b\f\n\r\t\v\\\'"') message.repeated_string.append(u'\u00fc\ua71f') # test as_utf8 = false. wire_text = text_format.messagetostring( message, as_one_line=true, as_utf8=false) parsed_message = unittest_pb2.testalltypes() text_format.merge(wire_text, parsed_message) self.assertequals(message, parsed_message) # test as_utf8 = true. wire_text = text_format.messagetostring( message, as_one_line=true, as_utf8=true) parsed_message = unittest_pb2.testalltypes() text_format.merge(wire_text, parsed_message) self.assertequals(message, parsed_message)
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 testprintexotic(self): message = unittest_pb2.testalltypes() message.repeated_int64.append(-9223372036854775808) message.repeated_uint64.append(18446744073709551615) message.repeated_double.append(123.456) message.repeated_double.append(1.23e22) message.repeated_double.append(1.23e-18) message.repeated_string.append('\000\001\a\b\f\n\r\t\v\\\'"') message.repeated_string.append(u'\u00fc\ua71f') self.comparetogoldentext( self.removeredundantzeros(text_format.messagetostring(message)), 'repeated_int64: -9223372036854775808\n' 'repeated_uint64: 18446744073709551615\n' 'repeated_double: 123.456\n' 'repeated_double: 1.23e+22\n' 'repeated_double: 1.23e-18\n' 'repeated_string: ' '"\\000\\001\\007\\010\\014\\n\\r\\t\\013\\\\\\\'\\""\n' 'repeated_string: "\\303\\274\\352\\234\\237"\n')
def __unicode__(self): # lazy import to prevent circular import when text_format imports this file. from google.protobuf import text_format return text_format.messagetostring(self, as_utf8=true).decode('utf-8')
def __unicode__(self): return text_format.messagetostring(self, as_utf8=true).decode('utf-8')
def __str__(self): return text_format.messagetostring(self)
def testprintallextensions(self): message = unittest_pb2.testallextensions() test_util.setallextensions(message) self.comparetogoldenfile( self.removeredundantzeros(text_format.messagetostring(message)), 'text_format_unittest_extensions_data.txt')
def testprintnestednewlineinstringasoneline(self): message = unittest_pb2.testalltypes() message.optional_string = "a\nnew\nline" self.comparetogoldentext( text_format.messagetostring(message, as_one_line=true), 'optional_string: "a\\nnew\\nline"')