31 package com.google.protobuf;
33 import map_lite_test.MapForProto2TestProto.BizarroTestMap;
34 import map_lite_test.MapForProto2TestProto.TestMap;
35 import map_lite_test.MapForProto2TestProto.TestMap.MessageValue;
36 import map_lite_test.MapForProto2TestProto.TestMapOrBuilder;
37 import map_lite_test.MapForProto2TestProto.TestUnknownEnumValue;
38 import java.io.ByteArrayOutputStream;
39 import java.io.IOException;
40 import java.util.ArrayList;
41 import java.util.Arrays;
42 import java.util.HashMap;
44 import junit.framework.TestCase;
51 .putInt32ToInt32Field(1, 11)
52 .putInt32ToInt32Field(2, 22)
53 .putInt32ToInt32Field(3, 33)
54 .putInt32ToStringField(1,
"11")
55 .putInt32ToStringField(2,
"22")
56 .putInt32ToStringField(3,
"33")
57 .putInt32ToBytesField(1,
TestUtil.toBytes(
"11"))
58 .putInt32ToBytesField(2,
TestUtil.toBytes(
"22"))
59 .putInt32ToBytesField(3,
TestUtil.toBytes(
"33"))
60 .putInt32ToEnumField(1, TestMap.EnumValue.FOO)
61 .putInt32ToEnumField(2, TestMap.EnumValue.BAR)
62 .putInt32ToEnumField(3, TestMap.EnumValue.BAZ)
63 .putInt32ToMessageField(1, MessageValue.newBuilder().setValue(11).build())
64 .putInt32ToMessageField(2, MessageValue.newBuilder().setValue(22).build())
65 .putInt32ToMessageField(3, MessageValue.newBuilder().setValue(33).build())
66 .putStringToInt32Field(
"1", 11)
67 .putStringToInt32Field(
"2", 22)
68 .putStringToInt32Field(
"3", 33);
72 TestMap.Builder mapBuilder = TestMap.newBuilder();
74 TestMap
map = mapBuilder.build();
80 .putAllInt32ToInt32Field(
source.getInt32ToInt32Field())
81 .putAllInt32ToStringField(
source.getInt32ToStringField())
82 .putAllInt32ToBytesField(
source.getInt32ToBytesField())
83 .putAllInt32ToEnumField(
source.getInt32ToEnumField())
84 .putAllInt32ToMessageField(
source.getInt32ToMessageField())
85 .putAllStringToInt32Field(
source.getStringToInt32Field());
89 assertEquals(3,
message.getInt32ToInt32Field().size());
90 assertEquals(11,
message.getInt32ToInt32Field().get(1).intValue());
91 assertEquals(22,
message.getInt32ToInt32Field().get(2).intValue());
92 assertEquals(33,
message.getInt32ToInt32Field().get(3).intValue());
94 assertEquals(3,
message.getInt32ToStringField().size());
95 assertEquals(
"11",
message.getInt32ToStringField().get(1));
96 assertEquals(
"22",
message.getInt32ToStringField().get(2));
97 assertEquals(
"33",
message.getInt32ToStringField().get(3));
99 assertEquals(3,
message.getInt32ToBytesField().size());
100 assertEquals(
TestUtil.toBytes(
"11"),
message.getInt32ToBytesField().get(1));
101 assertEquals(
TestUtil.toBytes(
"22"),
message.getInt32ToBytesField().get(2));
102 assertEquals(
TestUtil.toBytes(
"33"),
message.getInt32ToBytesField().get(3));
104 assertEquals(3,
message.getInt32ToEnumField().size());
105 assertEquals(TestMap.EnumValue.FOO,
message.getInt32ToEnumField().get(1));
106 assertEquals(TestMap.EnumValue.BAR,
message.getInt32ToEnumField().get(2));
107 assertEquals(TestMap.EnumValue.BAZ,
message.getInt32ToEnumField().get(3));
109 assertEquals(3,
message.getInt32ToMessageField().size());
110 assertEquals(11,
message.getInt32ToMessageField().get(1).getValue());
111 assertEquals(22,
message.getInt32ToMessageField().get(2).getValue());
112 assertEquals(33,
message.getInt32ToMessageField().get(3).getValue());
114 assertEquals(3,
message.getStringToInt32Field().size());
115 assertEquals(11,
message.getStringToInt32Field().get(
"1").intValue());
116 assertEquals(22,
message.getStringToInt32Field().get(
"2").intValue());
117 assertEquals(33,
message.getStringToInt32Field().get(
"3").intValue());
122 .putInt32ToInt32Field(1, 111)
123 .removeInt32ToInt32Field(2)
124 .putInt32ToInt32Field(4, 44)
125 .putInt32ToStringField(1,
"111")
126 .removeInt32ToStringField(2)
127 .putInt32ToStringField(4,
"44")
128 .putInt32ToBytesField(1,
TestUtil.toBytes(
"111"))
129 .removeInt32ToBytesField(2)
130 .putInt32ToBytesField(4,
TestUtil.toBytes(
"44"))
131 .putInt32ToEnumField(1, TestMap.EnumValue.BAR)
132 .removeInt32ToEnumField(2)
133 .putInt32ToEnumField(4, TestMap.EnumValue.QUX)
134 .putInt32ToMessageField(1, MessageValue.newBuilder().setValue(111).build())
135 .removeInt32ToMessageField(2)
136 .putInt32ToMessageField(4, MessageValue.newBuilder().setValue(44).build())
137 .putStringToInt32Field(
"1", 111)
138 .removeStringToInt32Field(
"2")
139 .putStringToInt32Field(
"4", 44);
143 TestMap.Builder mapBuilder = TestMap.newBuilder();
145 TestMap
map = mapBuilder.build();
148 mapBuilder =
map.toBuilder();
150 map = mapBuilder.build();
155 assertEquals(3,
message.getInt32ToInt32Field().size());
156 assertEquals(111,
message.getInt32ToInt32Field().get(1).intValue());
157 assertEquals(33,
message.getInt32ToInt32Field().get(3).intValue());
158 assertEquals(44,
message.getInt32ToInt32Field().get(4).intValue());
160 assertEquals(3,
message.getInt32ToStringField().size());
161 assertEquals(
"111",
message.getInt32ToStringField().get(1));
162 assertEquals(
"33",
message.getInt32ToStringField().get(3));
163 assertEquals(
"44",
message.getInt32ToStringField().get(4));
165 assertEquals(3,
message.getInt32ToBytesField().size());
166 assertEquals(
TestUtil.toBytes(
"111"),
message.getInt32ToBytesField().get(1));
167 assertEquals(
TestUtil.toBytes(
"33"),
message.getInt32ToBytesField().get(3));
168 assertEquals(
TestUtil.toBytes(
"44"),
message.getInt32ToBytesField().get(4));
170 assertEquals(3,
message.getInt32ToEnumField().size());
171 assertEquals(TestMap.EnumValue.BAR,
message.getInt32ToEnumField().get(1));
172 assertEquals(TestMap.EnumValue.BAZ,
message.getInt32ToEnumField().get(3));
173 assertEquals(TestMap.EnumValue.QUX,
message.getInt32ToEnumField().get(4));
175 assertEquals(3,
message.getInt32ToMessageField().size());
176 assertEquals(111,
message.getInt32ToMessageField().get(1).getValue());
177 assertEquals(33,
message.getInt32ToMessageField().get(3).getValue());
178 assertEquals(44,
message.getInt32ToMessageField().get(4).getValue());
180 assertEquals(3,
message.getStringToInt32Field().size());
181 assertEquals(111,
message.getStringToInt32Field().get(
"1").intValue());
182 assertEquals(33,
message.getStringToInt32Field().get(
"3").intValue());
183 assertEquals(44,
message.getStringToInt32Field().get(
"4").intValue());
187 assertEquals(0, testMapOrBuilder.getInt32ToInt32Field().size());
188 assertEquals(0, testMapOrBuilder.getInt32ToInt32FieldCount());
189 assertEquals(0, testMapOrBuilder.getInt32ToStringField().size());
190 assertEquals(0, testMapOrBuilder.getInt32ToStringFieldCount());
191 assertEquals(0, testMapOrBuilder.getInt32ToBytesField().size());
192 assertEquals(0, testMapOrBuilder.getInt32ToBytesFieldCount());
193 assertEquals(0, testMapOrBuilder.getInt32ToEnumField().size());
194 assertEquals(0, testMapOrBuilder.getInt32ToEnumFieldCount());
195 assertEquals(0, testMapOrBuilder.getInt32ToMessageField().size());
196 assertEquals(0, testMapOrBuilder.getInt32ToMessageFieldCount());
197 assertEquals(0, testMapOrBuilder.getStringToInt32Field().size());
198 assertEquals(0, testMapOrBuilder.getStringToInt32FieldCount());
206 TestMap.Builder builder = TestMap.newBuilder();
207 TestMap
message = builder.build();
208 builder.putInt32ToInt32Field(1, 2);
209 assertTrue(
message.getInt32ToInt32Field().isEmpty());
212 assertEquals(
newMap(1, 2), builder.getInt32ToInt32Field());
213 builder.putInt32ToInt32Field(2, 3);
215 assertEquals(
newMap(1, 2, 2, 3), builder.getInt32ToInt32Field());
219 TestMap.Builder builder = TestMap.newBuilder();
229 assertImmutable(testMapOrBuilder.getInt32ToInt32Field(), 1, 2);
230 assertImmutable(testMapOrBuilder.getInt32ToStringField(), 1,
"2");
231 assertImmutable(testMapOrBuilder.getInt32ToBytesField(), 1,
TestUtil.toBytes(
"2"));
232 assertImmutable(testMapOrBuilder.getInt32ToEnumField(), 1, TestMap.EnumValue.FOO);
234 testMapOrBuilder.getInt32ToMessageField(), 1, MessageValue.getDefaultInstance());
235 assertImmutable(testMapOrBuilder.getStringToInt32Field(),
"1", 2);
238 private <K, V>
void assertImmutable(Map<K, V>
map,
K key, V
value) {
242 }
catch (UnsupportedOperationException e) {
245 if (!
map.isEmpty()) {
247 map.entrySet().remove(
map.entrySet().iterator().next());
249 }
catch (UnsupportedOperationException e) {
256 TestMap.Builder builder = TestMap.newBuilder().putInt32ToInt32Field(1, 2);
257 assertEquals(
newMap(1, 2), builder.build().getInt32ToInt32Field());
258 assertEquals(
newMap(1, 2), builder.getInt32ToInt32Field());
259 builder.putInt32ToInt32Field(2, 3);
260 assertEquals(
newMap(1, 2, 2, 3), builder.getInt32ToInt32Field());
262 builder.putInt32ToEnumField(1, TestMap.EnumValue.BAR);
263 assertEquals(
newMap(1, TestMap.EnumValue.BAR), builder.build().getInt32ToEnumField());
264 assertEquals(
newMap(1, TestMap.EnumValue.BAR), builder.getInt32ToEnumField());
265 builder.putInt32ToEnumField(2, TestMap.EnumValue.FOO);
267 newMap(1, TestMap.EnumValue.BAR, 2, TestMap.EnumValue.FOO), builder.getInt32ToEnumField());
269 builder.putInt32ToStringField(1,
"1");
270 assertEquals(
newMap(1,
"1"), builder.build().getInt32ToStringField());
271 assertEquals(
newMap(1,
"1"), builder.getInt32ToStringField());
272 builder.putInt32ToStringField(2,
"2");
273 assertEquals(
newMap(1,
"1", 2,
"2"), builder.getInt32ToStringField());
275 builder.putInt32ToMessageField(1, TestMap.MessageValue.getDefaultInstance());
277 newMap(1, TestMap.MessageValue.getDefaultInstance()),
278 builder.build().getInt32ToMessageField());
280 newMap(1, TestMap.MessageValue.getDefaultInstance()), builder.getInt32ToMessageField());
281 builder.putInt32ToMessageField(2, TestMap.MessageValue.getDefaultInstance());
285 TestMap.MessageValue.getDefaultInstance(),
287 TestMap.MessageValue.getDefaultInstance()),
288 builder.getInt32ToMessageField());
292 TestMap.Builder builder = TestMap.newBuilder();
293 TestMap
message = builder.build();
314 TestMap.Builder sourceBuilder = TestMap.newBuilder();
316 TestMap
source = sourceBuilder.build();
319 TestMap.Builder destination = TestMap.newBuilder();
325 TestMap.Builder builder = TestMap.newBuilder();
328 builder.putInt32ToStringField(1,
null);
330 }
catch (NullPointerException e) {
335 builder.putInt32ToBytesField(1,
null);
337 }
catch (NullPointerException e) {
342 builder.putInt32ToEnumField(1,
null);
344 }
catch (NullPointerException e) {
349 builder.putInt32ToMessageField(1,
null);
351 }
catch (NullPointerException e) {
356 builder.putStringToInt32Field(
null, 1);
358 }
catch (NullPointerException e) {
364 TestMap.Builder builder = TestMap.newBuilder();
366 TestMap
message = builder.build();
367 assertEquals(
message.getSerializedSize(),
message.toByteString().size());
374 assertEquals(
message.getSerializedSize(),
message.toByteString().size());
381 assertEquals(
message.getSerializedSize(),
message.toByteString().size());
387 ByteArrayOutputStream byteArrayOutputStream =
new ByteArrayOutputStream();
389 bizarroMap.writeTo(
output);
391 return TestMap.parser().parseFrom(
ByteString.copyFrom(byteArrayOutputStream.toByteArray()));
396 String stringKey =
"a string key";
400 assertEquals(0,
map.getInt32ToInt32FieldOrDefault(5, -1));
402 map =
tryParseTestMap(BizarroTestMap.newBuilder().putInt32ToStringField(stringKey, 5).build());
403 assertEquals(
"",
map.getInt32ToStringFieldOrDefault(0,
null));
405 map =
tryParseTestMap(BizarroTestMap.newBuilder().putInt32ToBytesField(stringKey, 5).build());
410 assertEquals(TestMap.EnumValue.FOO,
map.getInt32ToEnumFieldOrDefault(0,
null));
418 assertTrue(
map.getInt32ToMessageField().isEmpty());
423 BizarroTestMap.newBuilder().putStringToInt32Field(stringKey,
bytes).build());
424 assertEquals(0,
map.getStringToInt32FieldOrDefault(stringKey, -1));
428 TestMap.Builder builder = TestMap.newBuilder();
430 TestMap
message = builder.build();
432 TestMap.Builder other = TestMap.newBuilder();
445 .putInt32ToInt32Field(1, 2)
446 .putInt32ToInt32Field(3, 4)
447 .putInt32ToInt32Field(5, 6)
452 .putInt32ToInt32Field(5, 6)
453 .putInt32ToInt32Field(1, 2)
454 .putInt32ToInt32Field(3, 4);
455 TestMap m2 = b2.build();
457 assertEquals(m1, m2);
458 assertEquals(m1.hashCode(), m2.hashCode());
461 b2.putInt32ToInt32Field(1, 0);
463 assertFalse(m1.equals(m2));
470 TestUnknownEnumValue.newBuilder()
471 .putInt32ToInt32Field(1, 1)
472 .putInt32ToInt32Field(2, 54321)
479 assertEquals(1,
message.getInt32ToEnumField().size());
480 assertEquals(TestMap.EnumValue.BAR,
message.getInt32ToEnumField().get(1));
483 TestUnknownEnumValue messageWithUnknownEnums = TestUnknownEnumValue.parseFrom(
data);
484 assertEquals(2, messageWithUnknownEnums.getInt32ToInt32Field().size());
485 assertEquals(1, messageWithUnknownEnums.getInt32ToInt32Field().get(1).intValue());
486 assertEquals(54321, messageWithUnknownEnums.getInt32ToInt32Field().get(2).intValue());
490 TestMap.Builder builder = TestMap.newBuilder();
492 TestMap
message = builder.build();
495 Arrays.asList(
"1",
"2",
"3"),
496 new ArrayList<String>(
message.getStringToInt32Field().keySet()));
499 private static <K, V> Map<K, V>
newMap(
K key1, V value1) {
500 Map<K, V>
map =
new HashMap<>();
501 map.put(key1, value1);
505 private static <K, V> Map<K, V>
newMap(
K key1, V value1,
K key2, V value2) {
506 Map<K, V>
map =
new HashMap<>();
507 map.put(key1, value1);
508 map.put(key2, value2);
513 TestMap.Builder builder = TestMap.newBuilder();
515 TestMap
message = builder.build();
516 assertEquals(
message.getStringToInt32Field(),
message.getStringToInt32FieldMap());
517 assertEquals(
message.getInt32ToBytesField(),
message.getInt32ToBytesFieldMap());
518 assertEquals(
message.getInt32ToEnumField(),
message.getInt32ToEnumFieldMap());
519 assertEquals(
message.getInt32ToMessageField(),
message.getInt32ToMessageFieldMap());
523 TestMap.Builder builder = TestMap.newBuilder();
530 assertTrue(testMapOrBuilder.containsInt32ToInt32Field(1));
531 assertTrue(testMapOrBuilder.containsInt32ToInt32Field(2));
532 assertTrue(testMapOrBuilder.containsInt32ToInt32Field(3));
533 assertFalse(testMapOrBuilder.containsInt32ToInt32Field(-1));
535 assertTrue(testMapOrBuilder.containsInt32ToStringField(1));
536 assertTrue(testMapOrBuilder.containsInt32ToStringField(2));
537 assertTrue(testMapOrBuilder.containsInt32ToStringField(3));
538 assertFalse(testMapOrBuilder.containsInt32ToStringField(-1));
540 assertTrue(testMapOrBuilder.containsInt32ToBytesField(1));
541 assertTrue(testMapOrBuilder.containsInt32ToBytesField(2));
542 assertTrue(testMapOrBuilder.containsInt32ToBytesField(3));
543 assertFalse(testMapOrBuilder.containsInt32ToBytesField(-1));
545 assertTrue(testMapOrBuilder.containsInt32ToEnumField(1));
546 assertTrue(testMapOrBuilder.containsInt32ToEnumField(2));
547 assertTrue(testMapOrBuilder.containsInt32ToEnumField(3));
548 assertFalse(testMapOrBuilder.containsInt32ToEnumField(-1));
550 assertTrue(testMapOrBuilder.containsInt32ToMessageField(1));
551 assertTrue(testMapOrBuilder.containsInt32ToMessageField(2));
552 assertTrue(testMapOrBuilder.containsInt32ToMessageField(3));
553 assertFalse(testMapOrBuilder.containsInt32ToMessageField(-1));
555 assertTrue(testMapOrBuilder.containsStringToInt32Field(
"1"));
556 assertTrue(testMapOrBuilder.containsStringToInt32Field(
"2"));
557 assertTrue(testMapOrBuilder.containsStringToInt32Field(
"3"));
558 assertFalse(testMapOrBuilder.containsStringToInt32Field(
"-1"));
562 TestMap.Builder builder = TestMap.newBuilder();
568 TestMap
message = builder.build();
571 builder =
message.toBuilder().putInt32ToInt32Field(4, 44);
572 assertEquals(4, builder.getInt32ToInt32FieldCount());
573 assertEquals(4, builder.build().getInt32ToInt32FieldCount());
576 builder.putInt32ToInt32Field(4, 44);
577 assertEquals(4, builder.getInt32ToInt32FieldCount());
581 assertEquals(expectedCount, testMapOrBuilder.getInt32ToInt32FieldCount());
582 assertEquals(expectedCount, testMapOrBuilder.getInt32ToStringFieldCount());
583 assertEquals(expectedCount, testMapOrBuilder.getInt32ToBytesFieldCount());
584 assertEquals(expectedCount, testMapOrBuilder.getInt32ToEnumFieldCount());
585 assertEquals(expectedCount, testMapOrBuilder.getInt32ToMessageFieldCount());
586 assertEquals(expectedCount, testMapOrBuilder.getStringToInt32FieldCount());
590 TestMap.Builder builder = TestMap.newBuilder();
598 assertEquals(11, testMapOrBuilder.getInt32ToInt32FieldOrDefault(1, -11));
599 assertEquals(-11, testMapOrBuilder.getInt32ToInt32FieldOrDefault(-1, -11));
601 assertEquals(
"11", testMapOrBuilder.getInt32ToStringFieldOrDefault(1,
"-11"));
602 assertNull(
"-11", testMapOrBuilder.getInt32ToStringFieldOrDefault(-1,
null));
604 assertEquals(
TestUtil.toBytes(
"11"), testMapOrBuilder.getInt32ToBytesFieldOrDefault(1,
null));
605 assertNull(testMapOrBuilder.getInt32ToBytesFieldOrDefault(-1,
null));
607 assertEquals(TestMap.EnumValue.FOO, testMapOrBuilder.getInt32ToEnumFieldOrDefault(1,
null));
608 assertNull(testMapOrBuilder.getInt32ToEnumFieldOrDefault(-1,
null));
611 MessageValue.newBuilder().setValue(11).build(),
612 testMapOrBuilder.getInt32ToMessageFieldOrDefault(1,
null));
613 assertNull(testMapOrBuilder.getInt32ToMessageFieldOrDefault(-1,
null));
615 assertEquals(11, testMapOrBuilder.getStringToInt32FieldOrDefault(
"1", -11));
616 assertEquals(-11, testMapOrBuilder.getStringToInt32FieldOrDefault(
"-1", -11));
619 testMapOrBuilder.getStringToInt32FieldOrDefault(
null, -11);
621 }
catch (NullPointerException e) {
627 TestMap.Builder builder = TestMap.newBuilder();
635 assertEquals(11, testMapOrBuilder.getInt32ToInt32FieldOrThrow(1));
637 testMapOrBuilder.getInt32ToInt32FieldOrThrow(-1);
639 }
catch (IllegalArgumentException e) {
643 assertEquals(
"11", testMapOrBuilder.getInt32ToStringFieldOrThrow(1));
646 testMapOrBuilder.getInt32ToStringFieldOrThrow(-1);
648 }
catch (IllegalArgumentException e) {
652 assertEquals(
TestUtil.toBytes(
"11"), testMapOrBuilder.getInt32ToBytesFieldOrThrow(1));
655 testMapOrBuilder.getInt32ToBytesFieldOrThrow(-1);
657 }
catch (IllegalArgumentException e) {
661 assertEquals(TestMap.EnumValue.FOO, testMapOrBuilder.getInt32ToEnumFieldOrThrow(1));
663 testMapOrBuilder.getInt32ToEnumFieldOrThrow(-1);
665 }
catch (IllegalArgumentException e) {
670 MessageValue.newBuilder().setValue(11).build(),
671 testMapOrBuilder.getInt32ToMessageFieldOrThrow(1));
673 testMapOrBuilder.getInt32ToMessageFieldOrThrow(-1);
675 }
catch (IllegalArgumentException e) {
679 assertEquals(11, testMapOrBuilder.getStringToInt32FieldOrThrow(
"1"));
681 testMapOrBuilder.getStringToInt32FieldOrThrow(
"-1");
683 }
catch (IllegalArgumentException e) {
688 testMapOrBuilder.getStringToInt32FieldOrThrow(
null);
690 }
catch (NullPointerException e) {
696 TestMap.Builder builder = TestMap.newBuilder();
697 builder.putInt32ToInt32Field(1, 11);
698 assertEquals(11, builder.getInt32ToInt32FieldOrThrow(1));
700 builder.putInt32ToStringField(1,
"a");
701 assertEquals(
"a", builder.getInt32ToStringFieldOrThrow(1));
703 builder.putInt32ToStringField(1,
null);
705 }
catch (NullPointerException e) {
709 builder.putInt32ToBytesField(1,
TestUtil.toBytes(
"11"));
710 assertEquals(
TestUtil.toBytes(
"11"), builder.getInt32ToBytesFieldOrThrow(1));
712 builder.putInt32ToBytesField(1,
null);
714 }
catch (NullPointerException e) {
718 builder.putInt32ToEnumField(1, TestMap.EnumValue.FOO);
719 assertEquals(TestMap.EnumValue.FOO, builder.getInt32ToEnumFieldOrThrow(1));
721 builder.putInt32ToEnumField(1,
null);
723 }
catch (NullPointerException e) {
727 builder.putStringToInt32Field(
"a", 1);
728 assertEquals(1, builder.getStringToInt32FieldOrThrow(
"a"));
730 builder.putStringToInt32Field(
null, -1);
731 }
catch (NullPointerException e) {
737 TestMap.Builder builder = TestMap.newBuilder();
739 assertEquals(11, builder.getInt32ToInt32FieldOrThrow(1));
740 for (
int times = 0; times < 2; times++) {
741 builder.removeInt32ToInt32Field(1);
742 assertEquals(-1, builder.getInt32ToInt32FieldOrDefault(1, -1));
745 assertEquals(
"11", builder.getInt32ToStringFieldOrThrow(1));
746 for (
int times = 0; times < 2; times++) {
747 builder.removeInt32ToStringField(1);
748 assertNull(builder.getInt32ToStringFieldOrDefault(1,
null));
751 assertEquals(
TestUtil.toBytes(
"11"), builder.getInt32ToBytesFieldOrThrow(1));
752 for (
int times = 0; times < 2; times++) {
753 builder.removeInt32ToBytesField(1);
754 assertNull(builder.getInt32ToBytesFieldOrDefault(1,
null));
757 assertEquals(TestMap.EnumValue.FOO, builder.getInt32ToEnumFieldOrThrow(1));
758 for (
int times = 0; times < 2; times++) {
759 builder.removeInt32ToEnumField(1);
760 assertNull(builder.getInt32ToEnumFieldOrDefault(1,
null));
763 assertEquals(11, builder.getStringToInt32FieldOrThrow(
"1"));
764 for (
int times = 0; times < 2; times++) {
765 builder.removeStringToInt32Field(
"1");
766 assertEquals(-1, builder.getStringToInt32FieldOrDefault(
"1", -1));
770 builder.removeStringToInt32Field(
null);
772 }
catch (NullPointerException e) {