@ -122,44 +122,44 @@ public class MapTest extends TestCase {
private void copyMapValues ( TestMap source , TestMap . Builder destination ) {
private void copyMapValues ( TestMap source , TestMap . Builder destination ) {
destination
destination
. putAllInt32ToInt32Field ( source . getInt32ToInt32Field ( ) )
. putAllInt32ToInt32Field ( source . getInt32ToInt32FieldMap ( ) )
. putAllInt32ToStringField ( source . getInt32ToStringField ( ) )
. putAllInt32ToStringField ( source . getInt32ToStringFieldMap ( ) )
. putAllInt32ToBytesField ( source . getInt32ToBytesField ( ) )
. putAllInt32ToBytesField ( source . getInt32ToBytesFieldMap ( ) )
. putAllInt32ToEnumField ( source . getInt32ToEnumField ( ) )
. putAllInt32ToEnumField ( source . getInt32ToEnumFieldMap ( ) )
. putAllInt32ToMessageField ( source . getInt32ToMessageField ( ) )
. putAllInt32ToMessageField ( source . getInt32ToMessageFieldMap ( ) )
. putAllStringToInt32Field ( source . getStringToInt32Field ( ) ) ;
. putAllStringToInt32Field ( source . getStringToInt32FieldMap ( ) ) ;
}
}
private void assertMapValuesSet ( TestMap message ) {
private void assertMapValuesSet ( TestMap message ) {
assertEquals ( 3 , message . getInt32ToInt32Field ( ) . size ( ) ) ;
assertEquals ( 3 , message . getInt32ToInt32FieldMap ( ) . size ( ) ) ;
assertEquals ( 11 , message . getInt32ToInt32Field ( ) . get ( 1 ) . intValue ( ) ) ;
assertEquals ( 11 , message . getInt32ToInt32FieldMap ( ) . get ( 1 ) . intValue ( ) ) ;
assertEquals ( 22 , message . getInt32ToInt32Field ( ) . get ( 2 ) . intValue ( ) ) ;
assertEquals ( 22 , message . getInt32ToInt32FieldMap ( ) . get ( 2 ) . intValue ( ) ) ;
assertEquals ( 33 , message . getInt32ToInt32Field ( ) . get ( 3 ) . intValue ( ) ) ;
assertEquals ( 33 , message . getInt32ToInt32FieldMap ( ) . get ( 3 ) . intValue ( ) ) ;
assertEquals ( 3 , message . getInt32ToStringField ( ) . size ( ) ) ;
assertEquals ( 3 , message . getInt32ToStringFieldMap ( ) . size ( ) ) ;
assertEquals ( "11" , message . getInt32ToStringField ( ) . get ( 1 ) ) ;
assertEquals ( "11" , message . getInt32ToStringFieldMap ( ) . get ( 1 ) ) ;
assertEquals ( "22" , message . getInt32ToStringField ( ) . get ( 2 ) ) ;
assertEquals ( "22" , message . getInt32ToStringFieldMap ( ) . get ( 2 ) ) ;
assertEquals ( "33" , message . getInt32ToStringField ( ) . get ( 3 ) ) ;
assertEquals ( "33" , message . getInt32ToStringFieldMap ( ) . get ( 3 ) ) ;
assertEquals ( 3 , message . getInt32ToBytesField ( ) . size ( ) ) ;
assertEquals ( 3 , message . getInt32ToBytesFieldMap ( ) . size ( ) ) ;
assertEquals ( TestUtil . toBytes ( "11" ) , message . getInt32ToBytesField ( ) . get ( 1 ) ) ;
assertEquals ( TestUtil . toBytes ( "11" ) , message . getInt32ToBytesFieldMap ( ) . get ( 1 ) ) ;
assertEquals ( TestUtil . toBytes ( "22" ) , message . getInt32ToBytesField ( ) . get ( 2 ) ) ;
assertEquals ( TestUtil . toBytes ( "22" ) , message . getInt32ToBytesFieldMap ( ) . get ( 2 ) ) ;
assertEquals ( TestUtil . toBytes ( "33" ) , message . getInt32ToBytesField ( ) . get ( 3 ) ) ;
assertEquals ( TestUtil . toBytes ( "33" ) , message . getInt32ToBytesFieldMap ( ) . get ( 3 ) ) ;
assertEquals ( 3 , message . getInt32ToEnumField ( ) . size ( ) ) ;
assertEquals ( 3 , message . getInt32ToEnumFieldMap ( ) . size ( ) ) ;
assertEquals ( TestMap . EnumValue . FOO , message . getInt32ToEnumField ( ) . get ( 1 ) ) ;
assertEquals ( TestMap . EnumValue . FOO , message . getInt32ToEnumFieldMap ( ) . get ( 1 ) ) ;
assertEquals ( TestMap . EnumValue . BAR , message . getInt32ToEnumField ( ) . get ( 2 ) ) ;
assertEquals ( TestMap . EnumValue . BAR , message . getInt32ToEnumFieldMap ( ) . get ( 2 ) ) ;
assertEquals ( TestMap . EnumValue . BAZ , message . getInt32ToEnumField ( ) . get ( 3 ) ) ;
assertEquals ( TestMap . EnumValue . BAZ , message . getInt32ToEnumFieldMap ( ) . get ( 3 ) ) ;
assertEquals ( 3 , message . getInt32ToMessageField ( ) . size ( ) ) ;
assertEquals ( 3 , message . getInt32ToMessageFieldMap ( ) . size ( ) ) ;
assertEquals ( 11 , message . getInt32ToMessageField ( ) . get ( 1 ) . getValue ( ) ) ;
assertEquals ( 11 , message . getInt32ToMessageFieldMap ( ) . get ( 1 ) . getValue ( ) ) ;
assertEquals ( 22 , message . getInt32ToMessageField ( ) . get ( 2 ) . getValue ( ) ) ;
assertEquals ( 22 , message . getInt32ToMessageFieldMap ( ) . get ( 2 ) . getValue ( ) ) ;
assertEquals ( 33 , message . getInt32ToMessageField ( ) . get ( 3 ) . getValue ( ) ) ;
assertEquals ( 33 , message . getInt32ToMessageFieldMap ( ) . get ( 3 ) . getValue ( ) ) ;
assertEquals ( 3 , message . getStringToInt32Field ( ) . size ( ) ) ;
assertEquals ( 3 , message . getStringToInt32FieldMap ( ) . size ( ) ) ;
assertEquals ( 11 , message . getStringToInt32Field ( ) . get ( "1" ) . intValue ( ) ) ;
assertEquals ( 11 , message . getStringToInt32FieldMap ( ) . get ( "1" ) . intValue ( ) ) ;
assertEquals ( 22 , message . getStringToInt32Field ( ) . get ( "2" ) . intValue ( ) ) ;
assertEquals ( 22 , message . getStringToInt32FieldMap ( ) . get ( "2" ) . intValue ( ) ) ;
assertEquals ( 33 , message . getStringToInt32Field ( ) . get ( "3" ) . intValue ( ) ) ;
assertEquals ( 33 , message . getStringToInt32FieldMap ( ) . get ( "3" ) . intValue ( ) ) ;
}
}
private void updateMapValuesUsingMutableMap ( TestMap . Builder builder ) {
private void updateMapValuesUsingMutableMap ( TestMap . Builder builder ) {
@ -239,35 +239,35 @@ public class MapTest extends TestCase {
}
}
private void assertMapValuesUpdated ( TestMap message ) {
private void assertMapValuesUpdated ( TestMap message ) {
assertEquals ( 3 , message . getInt32ToInt32Field ( ) . size ( ) ) ;
assertEquals ( 3 , message . getInt32ToInt32FieldMap ( ) . size ( ) ) ;
assertEquals ( 111 , message . getInt32ToInt32Field ( ) . get ( 1 ) . intValue ( ) ) ;
assertEquals ( 111 , message . getInt32ToInt32FieldMap ( ) . get ( 1 ) . intValue ( ) ) ;
assertEquals ( 33 , message . getInt32ToInt32Field ( ) . get ( 3 ) . intValue ( ) ) ;
assertEquals ( 33 , message . getInt32ToInt32FieldMap ( ) . get ( 3 ) . intValue ( ) ) ;
assertEquals ( 44 , message . getInt32ToInt32Field ( ) . get ( 4 ) . intValue ( ) ) ;
assertEquals ( 44 , message . getInt32ToInt32FieldMap ( ) . get ( 4 ) . intValue ( ) ) ;
assertEquals ( 3 , message . getInt32ToStringField ( ) . size ( ) ) ;
assertEquals ( 3 , message . getInt32ToStringFieldMap ( ) . size ( ) ) ;
assertEquals ( "111" , message . getInt32ToStringField ( ) . get ( 1 ) ) ;
assertEquals ( "111" , message . getInt32ToStringFieldMap ( ) . get ( 1 ) ) ;
assertEquals ( "33" , message . getInt32ToStringField ( ) . get ( 3 ) ) ;
assertEquals ( "33" , message . getInt32ToStringFieldMap ( ) . get ( 3 ) ) ;
assertEquals ( "44" , message . getInt32ToStringField ( ) . get ( 4 ) ) ;
assertEquals ( "44" , message . getInt32ToStringFieldMap ( ) . get ( 4 ) ) ;
assertEquals ( 3 , message . getInt32ToBytesField ( ) . size ( ) ) ;
assertEquals ( 3 , message . getInt32ToBytesFieldMap ( ) . size ( ) ) ;
assertEquals ( TestUtil . toBytes ( "111" ) , message . getInt32ToBytesField ( ) . get ( 1 ) ) ;
assertEquals ( TestUtil . toBytes ( "111" ) , message . getInt32ToBytesFieldMap ( ) . get ( 1 ) ) ;
assertEquals ( TestUtil . toBytes ( "33" ) , message . getInt32ToBytesField ( ) . get ( 3 ) ) ;
assertEquals ( TestUtil . toBytes ( "33" ) , message . getInt32ToBytesFieldMap ( ) . get ( 3 ) ) ;
assertEquals ( TestUtil . toBytes ( "44" ) , message . getInt32ToBytesField ( ) . get ( 4 ) ) ;
assertEquals ( TestUtil . toBytes ( "44" ) , message . getInt32ToBytesFieldMap ( ) . get ( 4 ) ) ;
assertEquals ( 3 , message . getInt32ToEnumField ( ) . size ( ) ) ;
assertEquals ( 3 , message . getInt32ToEnumFieldMap ( ) . size ( ) ) ;
assertEquals ( TestMap . EnumValue . BAR , message . getInt32ToEnumField ( ) . get ( 1 ) ) ;
assertEquals ( TestMap . EnumValue . BAR , message . getInt32ToEnumFieldMap ( ) . get ( 1 ) ) ;
assertEquals ( TestMap . EnumValue . BAZ , message . getInt32ToEnumField ( ) . get ( 3 ) ) ;
assertEquals ( TestMap . EnumValue . BAZ , message . getInt32ToEnumFieldMap ( ) . get ( 3 ) ) ;
assertEquals ( TestMap . EnumValue . QUX , message . getInt32ToEnumField ( ) . get ( 4 ) ) ;
assertEquals ( TestMap . EnumValue . QUX , message . getInt32ToEnumFieldMap ( ) . get ( 4 ) ) ;
assertEquals ( 3 , message . getInt32ToMessageField ( ) . size ( ) ) ;
assertEquals ( 3 , message . getInt32ToMessageFieldMap ( ) . size ( ) ) ;
assertEquals ( 111 , message . getInt32ToMessageField ( ) . get ( 1 ) . getValue ( ) ) ;
assertEquals ( 111 , message . getInt32ToMessageFieldMap ( ) . get ( 1 ) . getValue ( ) ) ;
assertEquals ( 33 , message . getInt32ToMessageField ( ) . get ( 3 ) . getValue ( ) ) ;
assertEquals ( 33 , message . getInt32ToMessageFieldMap ( ) . get ( 3 ) . getValue ( ) ) ;
assertEquals ( 44 , message . getInt32ToMessageField ( ) . get ( 4 ) . getValue ( ) ) ;
assertEquals ( 44 , message . getInt32ToMessageFieldMap ( ) . get ( 4 ) . getValue ( ) ) ;
assertEquals ( 3 , message . getStringToInt32Field ( ) . size ( ) ) ;
assertEquals ( 3 , message . getStringToInt32FieldMap ( ) . size ( ) ) ;
assertEquals ( 111 , message . getStringToInt32Field ( ) . get ( "1" ) . intValue ( ) ) ;
assertEquals ( 111 , message . getStringToInt32FieldMap ( ) . get ( "1" ) . intValue ( ) ) ;
assertEquals ( 33 , message . getStringToInt32Field ( ) . get ( "3" ) . intValue ( ) ) ;
assertEquals ( 33 , message . getStringToInt32FieldMap ( ) . get ( "3" ) . intValue ( ) ) ;
assertEquals ( 44 , message . getStringToInt32Field ( ) . get ( "4" ) . intValue ( ) ) ;
assertEquals ( 44 , message . getStringToInt32FieldMap ( ) . get ( "4" ) . intValue ( ) ) ;
}
}
private void assertMapValuesCleared ( TestMapOrBuilder testMapOrBuilder ) {
private void assertMapValuesCleared ( TestMapOrBuilder testMapOrBuilder ) {
@ -468,11 +468,13 @@ public class MapTest extends TestCase {
. build ( ) ;
. build ( ) ;
TestMap destination =
TestMap destination =
TestMap . newBuilder ( ) . putAllInt32ToEnumFieldValue ( source . getInt32ToEnumFieldValue ( ) ) . build ( ) ;
TestMap . newBuilder ( )
. putAllInt32ToEnumFieldValue ( source . getInt32ToEnumFieldValueMap ( ) )
. build ( ) ;
assertEquals ( 0 , destination . getInt32ToEnumFieldValue ( ) . get ( 0 ) . intValue ( ) ) ;
assertEquals ( 0 , destination . getInt32ToEnumFieldValueMap ( ) . get ( 0 ) . intValue ( ) ) ;
assertEquals ( 1 , destination . getInt32ToEnumFieldValue ( ) . get ( 1 ) . intValue ( ) ) ;
assertEquals ( 1 , destination . getInt32ToEnumFieldValueMap ( ) . get ( 1 ) . intValue ( ) ) ;
assertEquals ( 1000 , destination . getInt32ToEnumFieldValue ( ) . get ( 2 ) . intValue ( ) ) ;
assertEquals ( 1000 , destination . getInt32ToEnumFieldValueMap ( ) . get ( 2 ) . intValue ( ) ) ;
assertEquals ( 3 , destination . getInt32ToEnumFieldCount ( ) ) ;
assertEquals ( 3 , destination . getInt32ToEnumFieldCount ( ) ) ;
}
}
@ -583,7 +585,7 @@ public class MapTest extends TestCase {
} catch ( InvalidProtocolBufferException expected ) {
} catch ( InvalidProtocolBufferException expected ) {
assertTrue ( expected . getUnfinishedMessage ( ) instanceof TestMap ) ;
assertTrue ( expected . getUnfinishedMessage ( ) instanceof TestMap ) ;
map = ( TestMap ) expected . getUnfinishedMessage ( ) ;
map = ( TestMap ) expected . getUnfinishedMessage ( ) ;
assertTrue ( map . getInt32ToMessageField ( ) . isEmpty ( ) ) ;
assertTrue ( map . getInt32ToMessageFieldMap ( ) . isEmpty ( ) ) ;
}
}
map =
map =
@ -644,14 +646,14 @@ public class MapTest extends TestCase {
TestOnChangeEventPropagation . Builder parent = TestOnChangeEventPropagation . newBuilder ( ) ;
TestOnChangeEventPropagation . Builder parent = TestOnChangeEventPropagation . newBuilder ( ) ;
parent . getOptionalMessageBuilder ( ) . putInt32ToInt32Field ( 1 , 2 ) ;
parent . getOptionalMessageBuilder ( ) . putInt32ToInt32Field ( 1 , 2 ) ;
TestOnChangeEventPropagation message = parent . build ( ) ;
TestOnChangeEventPropagation message = parent . build ( ) ;
assertEquals ( 2 , message . getOptionalMessage ( ) . getInt32ToInt32Field ( ) . get ( 1 ) . intValue ( ) ) ;
assertEquals ( 2 , message . getOptionalMessage ( ) . getInt32ToInt32FieldMap ( ) . get ( 1 ) . intValue ( ) ) ;
// Make a change using nested builder.
// Make a change using nested builder.
parent . getOptionalMessageBuilder ( ) . putInt32ToInt32Field ( 1 , 3 ) ;
parent . getOptionalMessageBuilder ( ) . putInt32ToInt32Field ( 1 , 3 ) ;
// Should be able to observe the change.
// Should be able to observe the change.
message = parent . build ( ) ;
message = parent . build ( ) ;
assertEquals ( 3 , message . getOptionalMessage ( ) . getInt32ToInt32Field ( ) . get ( 1 ) . intValue ( ) ) ;
assertEquals ( 3 , message . getOptionalMessage ( ) . getInt32ToInt32FieldMap ( ) . get ( 1 ) . intValue ( ) ) ;
// Make another change using mergeFrom()
// Make another change using mergeFrom()
TestMap other = TestMap . newBuilder ( ) . putInt32ToInt32Field ( 1 , 4 ) . build ( ) ;
TestMap other = TestMap . newBuilder ( ) . putInt32ToInt32Field ( 1 , 4 ) . build ( ) ;
@ -659,14 +661,14 @@ public class MapTest extends TestCase {
// Should be able to observe the change.
// Should be able to observe the change.
message = parent . build ( ) ;
message = parent . build ( ) ;
assertEquals ( 4 , message . getOptionalMessage ( ) . getInt32ToInt32Field ( ) . get ( 1 ) . intValue ( ) ) ;
assertEquals ( 4 , message . getOptionalMessage ( ) . getInt32ToInt32FieldMap ( ) . get ( 1 ) . intValue ( ) ) ;
// Make yet another change by clearing the nested builder.
// Make yet another change by clearing the nested builder.
parent . getOptionalMessageBuilder ( ) . clear ( ) ;
parent . getOptionalMessageBuilder ( ) . clear ( ) ;
// Should be able to observe the change.
// Should be able to observe the change.
message = parent . build ( ) ;
message = parent . build ( ) ;
assertEquals ( 0 , message . getOptionalMessage ( ) . getInt32ToInt32Field ( ) . size ( ) ) ;
assertEquals ( 0 , message . getOptionalMessage ( ) . getInt32ToInt32FieldMap ( ) . size ( ) ) ;
}
}
public void testNestedBuilderOnChangeEventPropagationReflection ( ) {
public void testNestedBuilderOnChangeEventPropagationReflection ( ) {
@ -683,7 +685,7 @@ public class MapTest extends TestCase {
// Should be able to observe the change.
// Should be able to observe the change.
TestOnChangeEventPropagation message = parentBuilder . build ( ) ;
TestOnChangeEventPropagation message = parentBuilder . build ( ) ;
assertEquals ( 1 , message . getOptionalMessage ( ) . getInt32ToInt32Field ( ) . size ( ) ) ;
assertEquals ( 1 , message . getOptionalMessage ( ) . getInt32ToInt32FieldMap ( ) . size ( ) ) ;
// Change the entry value.
// Change the entry value.
entryBuilder . putInt32ToInt32Field ( 1 , 4 ) ;
entryBuilder . putInt32ToInt32Field ( 1 , 4 ) ;
@ -692,7 +694,7 @@ public class MapTest extends TestCase {
// Should be able to observe the change.
// Should be able to observe the change.
message = parentBuilder . build ( ) ;
message = parentBuilder . build ( ) ;
assertEquals ( 4 , message . getOptionalMessage ( ) . getInt32ToInt32Field ( ) . get ( 1 ) . intValue ( ) ) ;
assertEquals ( 4 , message . getOptionalMessage ( ) . getInt32ToInt32FieldMap ( ) . get ( 1 ) . intValue ( ) ) ;
// Clear the nested builder.
// Clear the nested builder.
testMapBuilder = parentBuilder . getOptionalMessageBuilder ( ) ;
testMapBuilder = parentBuilder . getOptionalMessageBuilder ( ) ;
@ -700,7 +702,7 @@ public class MapTest extends TestCase {
// Should be able to observe the change.
// Should be able to observe the change.
message = parentBuilder . build ( ) ;
message = parentBuilder . build ( ) ;
assertEquals ( 0 , message . getOptionalMessage ( ) . getInt32ToInt32Field ( ) . size ( ) ) ;
assertEquals ( 0 , message . getOptionalMessage ( ) . getInt32ToInt32FieldMap ( ) . size ( ) ) ;
}
}
// The following methods are used to test reflection API.
// The following methods are used to test reflection API.
@ -789,8 +791,8 @@ public class MapTest extends TestCase {
builder . clearField ( f ( "int32_to_int32_field" ) ) ;
builder . clearField ( f ( "int32_to_int32_field" ) ) ;
builder . clearField ( f ( "int32_to_message_field" ) ) ;
builder . clearField ( f ( "int32_to_message_field" ) ) ;
message = builder . build ( ) ;
message = builder . build ( ) ;
assertEquals ( 0 , message . getInt32ToInt32Field ( ) . size ( ) ) ;
assertEquals ( 0 , message . getInt32ToInt32FieldMap ( ) . size ( ) ) ;
assertEquals ( 0 , message . getInt32ToMessageField ( ) . size ( ) ) ;
assertEquals ( 0 , message . getInt32ToMessageFieldMap ( ) . size ( ) ) ;
// Test setField()
// Test setField()
setMapValues ( builder , "int32_to_int32_field" , mapForValues ( 11 , 22 , 33 , 44 ) ) ;
setMapValues ( builder , "int32_to_int32_field" , mapForValues ( 11 , 22 , 33 , 44 ) ) ;
@ -801,10 +803,10 @@ public class MapTest extends TestCase {
111 , MessageValue . newBuilder ( ) . setValue ( 222 ) . build ( ) ,
111 , MessageValue . newBuilder ( ) . setValue ( 222 ) . build ( ) ,
333 , MessageValue . newBuilder ( ) . setValue ( 444 ) . build ( ) ) ) ;
333 , MessageValue . newBuilder ( ) . setValue ( 444 ) . build ( ) ) ) ;
message = builder . build ( ) ;
message = builder . build ( ) ;
assertEquals ( 22 , message . getInt32ToInt32Field ( ) . get ( 11 ) . intValue ( ) ) ;
assertEquals ( 22 , message . getInt32ToInt32FieldMap ( ) . get ( 11 ) . intValue ( ) ) ;
assertEquals ( 44 , message . getInt32ToInt32Field ( ) . get ( 33 ) . intValue ( ) ) ;
assertEquals ( 44 , message . getInt32ToInt32FieldMap ( ) . get ( 33 ) . intValue ( ) ) ;
assertEquals ( 222 , message . getInt32ToMessageField ( ) . get ( 111 ) . getValue ( ) ) ;
assertEquals ( 222 , message . getInt32ToMessageFieldMap ( ) . get ( 111 ) . getValue ( ) ) ;
assertEquals ( 444 , message . getInt32ToMessageField ( ) . get ( 333 ) . getValue ( ) ) ;
assertEquals ( 444 , message . getInt32ToMessageFieldMap ( ) . get ( 333 ) . getValue ( ) ) ;
// Test addRepeatedField
// Test addRepeatedField
builder . addRepeatedField (
builder . addRepeatedField (
@ -817,8 +819,8 @@ public class MapTest extends TestCase {
555 ,
555 ,
MessageValue . newBuilder ( ) . setValue ( 666 ) . build ( ) ) ) ;
MessageValue . newBuilder ( ) . setValue ( 666 ) . build ( ) ) ) ;
message = builder . build ( ) ;
message = builder . build ( ) ;
assertEquals ( 66 , message . getInt32ToInt32Field ( ) . get ( 55 ) . intValue ( ) ) ;
assertEquals ( 66 , message . getInt32ToInt32FieldMap ( ) . get ( 55 ) . intValue ( ) ) ;
assertEquals ( 666 , message . getInt32ToMessageField ( ) . get ( 555 ) . getValue ( ) ) ;
assertEquals ( 666 , message . getInt32ToMessageFieldMap ( ) . get ( 555 ) . getValue ( ) ) ;
// Test addRepeatedField (overriding existing values)
// Test addRepeatedField (overriding existing values)
builder . addRepeatedField (
builder . addRepeatedField (
@ -831,8 +833,8 @@ public class MapTest extends TestCase {
555 ,
555 ,
MessageValue . newBuilder ( ) . setValue ( 555 ) . build ( ) ) ) ;
MessageValue . newBuilder ( ) . setValue ( 555 ) . build ( ) ) ) ;
message = builder . build ( ) ;
message = builder . build ( ) ;
assertEquals ( 55 , message . getInt32ToInt32Field ( ) . get ( 55 ) . intValue ( ) ) ;
assertEquals ( 55 , message . getInt32ToInt32FieldMap ( ) . get ( 55 ) . intValue ( ) ) ;
assertEquals ( 555 , message . getInt32ToMessageField ( ) . get ( 555 ) . getValue ( ) ) ;
assertEquals ( 555 , message . getInt32ToMessageFieldMap ( ) . get ( 555 ) . getValue ( ) ) ;
// Test setRepeatedField
// Test setRepeatedField
for ( int i = 0 ; i < builder . getRepeatedFieldCount ( f ( "int32_to_int32_field" ) ) ; i + + ) {
for ( int i = 0 ; i < builder . getRepeatedFieldCount ( f ( "int32_to_int32_field" ) ) ; i + + ) {
@ -846,9 +848,9 @@ public class MapTest extends TestCase {
builder . setRepeatedField ( f ( "int32_to_int32_field" ) , i , mapEntryBuilder . build ( ) ) ;
builder . setRepeatedField ( f ( "int32_to_int32_field" ) , i , mapEntryBuilder . build ( ) ) ;
}
}
message = builder . build ( ) ;
message = builder . build ( ) ;
assertEquals ( 11 , message . getInt32ToInt32Field ( ) . get ( 22 ) . intValue ( ) ) ;
assertEquals ( 11 , message . getInt32ToInt32FieldMap ( ) . get ( 22 ) . intValue ( ) ) ;
assertEquals ( 33 , message . getInt32ToInt32Field ( ) . get ( 44 ) . intValue ( ) ) ;
assertEquals ( 33 , message . getInt32ToInt32FieldMap ( ) . get ( 44 ) . intValue ( ) ) ;
assertEquals ( 55 , message . getInt32ToInt32Field ( ) . get ( 55 ) . intValue ( ) ) ;
assertEquals ( 55 , message . getInt32ToInt32FieldMap ( ) . get ( 55 ) . intValue ( ) ) ;
}
}
// See additional coverage in TextFormatTest.java.
// See additional coverage in TextFormatTest.java.
@ -937,21 +939,21 @@ public class MapTest extends TestCase {
2 , 1000 ) ) ; // unknown value.
2 , 1000 ) ) ; // unknown value.
TestMap message = builder . build ( ) ;
TestMap message = builder . build ( ) ;
assertEquals ( TestMap . EnumValue . FOO , message . getInt32ToEnumField ( ) . get ( 0 ) ) ;
assertEquals ( TestMap . EnumValue . FOO , message . getInt32ToEnumFieldMap ( ) . get ( 0 ) ) ;
assertEquals ( TestMap . EnumValue . BAR , message . getInt32ToEnumField ( ) . get ( 1 ) ) ;
assertEquals ( TestMap . EnumValue . BAR , message . getInt32ToEnumFieldMap ( ) . get ( 1 ) ) ;
assertEquals ( TestMap . EnumValue . UNRECOGNIZED , message . getInt32ToEnumField ( ) . get ( 2 ) ) ;
assertEquals ( TestMap . EnumValue . UNRECOGNIZED , message . getInt32ToEnumFieldMap ( ) . get ( 2 ) ) ;
assertEquals ( 1000 , message . getInt32ToEnumFieldValue ( ) . get ( 2 ) . intValue ( ) ) ;
assertEquals ( 1000 , message . getInt32ToEnumFieldValueMap ( ) . get ( 2 ) . intValue ( ) ) ;
// Unknown enum values should be preserved after:
// Unknown enum values should be preserved after:
// 1. Serialization and parsing.
// 1. Serialization and parsing.
// 2. toBuild().
// 2. toBuild().
// 3. mergeFrom().
// 3. mergeFrom().
message = TestMap . parseFrom ( message . toByteString ( ) ) ;
message = TestMap . parseFrom ( message . toByteString ( ) ) ;
assertEquals ( 1000 , message . getInt32ToEnumFieldValue ( ) . get ( 2 ) . intValue ( ) ) ;
assertEquals ( 1000 , message . getInt32ToEnumFieldValueMap ( ) . get ( 2 ) . intValue ( ) ) ;
builder = message . toBuilder ( ) ;
builder = message . toBuilder ( ) ;
assertEquals ( 1000 , builder . getInt32ToEnumFieldValue ( ) . get ( 2 ) . intValue ( ) ) ;
assertEquals ( 1000 , builder . getInt32ToEnumFieldValueMap ( ) . get ( 2 ) . intValue ( ) ) ;
builder = TestMap . newBuilder ( ) . mergeFrom ( message ) ;
builder = TestMap . newBuilder ( ) . mergeFrom ( message ) ;
assertEquals ( 1000 , builder . getInt32ToEnumFieldValue ( ) . get ( 2 ) . intValue ( ) ) ;
assertEquals ( 1000 , builder . getInt32ToEnumFieldValueMap ( ) . get ( 2 ) . intValue ( ) ) ;
// hashCode()/equals() should take unknown enum values into account.
// hashCode()/equals() should take unknown enum values into account.
builder . putAllInt32ToEnumFieldValue ( newMap ( 2 , 1001 ) ) ;
builder . putAllInt32ToEnumFieldValue ( newMap ( 2 , 1001 ) ) ;
@ -960,7 +962,7 @@ public class MapTest extends TestCase {
assertFalse ( message . equals ( message2 ) ) ;
assertFalse ( message . equals ( message2 ) ) ;
// Unknown values will be converted to UNRECOGNIZED so the resulted enum map
// Unknown values will be converted to UNRECOGNIZED so the resulted enum map
// should be the same.
// should be the same.
assertEquals ( message2 . getInt32ToEnumField ( ) , message . getInt32ToEnumField ( ) ) ;
assertEquals ( message2 . getInt32ToEnumFieldMap ( ) , message . getInt32ToEnumFieldMap ( ) ) ;
}
}
public void testUnknownEnumValuesInReflectionApi ( ) throws Exception {
public void testUnknownEnumValuesInReflectionApi ( ) throws Exception {
@ -991,7 +993,7 @@ public class MapTest extends TestCase {
// Verify that enum values have been successfully updated.
// Verify that enum values have been successfully updated.
TestMap message = builder . build ( ) ;
TestMap message = builder . build ( ) ;
for ( Map . Entry < Integer , Integer > entry : message . getInt32ToEnumFieldValue ( ) . entrySet ( ) ) {
for ( Map . Entry < Integer , Integer > entry : message . getInt32ToEnumFieldValueMap ( ) . entrySet ( ) ) {
assertEquals ( data . get ( entry . getKey ( ) ) + 1 , entry . getValue ( ) . intValue ( ) ) ;
assertEquals ( data . get ( entry . getKey ( ) ) + 1 , entry . getValue ( ) . intValue ( ) ) ;
}
}
}
}
@ -1002,18 +1004,18 @@ public class MapTest extends TestCase {
TestMap message = builder . build ( ) ;
TestMap message = builder . build ( ) ;
assertEquals (
assertEquals (
Arrays . asList ( "1" , "2" , "3" ) , new ArrayList < > ( message . getStringToInt32Field ( ) . keySet ( ) ) ) ;
Arrays . asList ( "1" , "2" , "3" ) , new ArrayList < > ( message . getStringToInt32FieldMap ( ) . keySet ( ) ) ) ;
}
}
public void testGetMap ( ) {
public void testGetMap ( ) {
TestMap . Builder builder = TestMap . newBuilder ( ) ;
TestMap . Builder builder = TestMap . newBuilder ( ) ;
setMapValuesUsingAccessors ( builder ) ;
setMapValuesUsingAccessors ( builder ) ;
TestMap message = builder . build ( ) ;
TestMap message = builder . build ( ) ;
assertEquals ( message . getStringToInt32Field ( ) , message . getStringToInt32FieldMap ( ) ) ;
assertEquals ( message . getStringToInt32FieldMap ( ) , message . getStringToInt32FieldMap ( ) ) ;
assertEquals ( message . getInt32ToBytesField ( ) , message . getInt32ToBytesFieldMap ( ) ) ;
assertEquals ( message . getInt32ToBytesFieldMap ( ) , message . getInt32ToBytesFieldMap ( ) ) ;
assertEquals ( message . getInt32ToEnumField ( ) , message . getInt32ToEnumFieldMap ( ) ) ;
assertEquals ( message . getInt32ToEnumFieldMap ( ) , message . getInt32ToEnumFieldMap ( ) ) ;
assertEquals ( message . getInt32ToEnumFieldValue ( ) , message . getInt32ToEnumFieldValueMap ( ) ) ;
assertEquals ( message . getInt32ToEnumFieldValueMap ( ) , message . getInt32ToEnumFieldValueMap ( ) ) ;
assertEquals ( message . getInt32ToMessageField ( ) , message . getInt32ToMessageFieldMap ( ) ) ;
assertEquals ( message . getInt32ToMessageFieldMap ( ) , message . getInt32ToMessageFieldMap ( ) ) ;
}
}
public void testContains ( ) {
public void testContains ( ) {