|
|
|
@ -2731,6 +2731,45 @@ public class NanoTest extends TestCase { |
|
|
|
|
assertTrue(protoPrint.contains("id: 33")); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public void testMessageNanoPrinterForMaps() throws Exception { |
|
|
|
|
TestMap msg = new TestMap(); |
|
|
|
|
MessageValue msgValues[] = new MessageValue[] { |
|
|
|
|
new MessageValue(), new MessageValue() |
|
|
|
|
}; |
|
|
|
|
msgValues[0].value = 1; |
|
|
|
|
msgValues[1].value = 2; |
|
|
|
|
msg.int32ToBytesField = new HashMap<Integer, byte[]>(); |
|
|
|
|
msg.int32ToBytesField.put(1, new byte[] {'"', '\0'}); |
|
|
|
|
msg.int32ToBytesField.put(2, new byte[] {1, 8}); |
|
|
|
|
msg.stringToInt32Field = new HashMap<String, Integer>(); |
|
|
|
|
msg.stringToInt32Field.put("hello", 1); |
|
|
|
|
msg.stringToInt32Field.put("world", 2); |
|
|
|
|
msg.int32ToMessageField = new HashMap<Integer, MapTestProto.TestMap.MessageValue>(); |
|
|
|
|
msg.int32ToMessageField.put(0, msgValues[0]); |
|
|
|
|
msg.int32ToMessageField.put(1, msgValues[1]); |
|
|
|
|
msg.int32ToEnumField = new HashMap<Integer, Integer>(); |
|
|
|
|
msg.int32ToEnumField.put(1, 2); |
|
|
|
|
msg.int32ToEnumField.put(2, 3); |
|
|
|
|
String protoPrint = msg.toString(); |
|
|
|
|
|
|
|
|
|
assertTrue(protoPrint.contains( |
|
|
|
|
"int32_to_bytes_field <\n key: 1\n value: \"\\\"\\000\"\n>")); |
|
|
|
|
assertTrue(protoPrint.contains( |
|
|
|
|
"int32_to_bytes_field <\n key: 2\n value: \"\\001\\010\"\n>")); |
|
|
|
|
assertTrue(protoPrint.contains( |
|
|
|
|
"string_to_int32_field <\n key: \"hello\"\n value: 1\n>")); |
|
|
|
|
assertTrue(protoPrint.contains( |
|
|
|
|
"string_to_int32_field <\n key: \"world\"\n value: 2\n>")); |
|
|
|
|
assertTrue(protoPrint.contains( |
|
|
|
|
"int32_to_message_field <\n key: 0\n value <\n value: 1\n")); |
|
|
|
|
assertTrue(protoPrint.contains( |
|
|
|
|
"int32_to_message_field <\n key: 1\n value <\n value: 2\n")); |
|
|
|
|
assertTrue(protoPrint.contains( |
|
|
|
|
"int32_to_enum_field <\n key: 1\n value: 2\n>")); |
|
|
|
|
assertTrue(protoPrint.contains( |
|
|
|
|
"int32_to_enum_field <\n key: 2\n value: 3\n>")); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public void testExtensions() throws Exception { |
|
|
|
|
Extensions.ExtendableMessage message = new Extensions.ExtendableMessage(); |
|
|
|
|
message.field = 5; |
|
|
|
|