ADD: added new version of protobuf
This commit is contained in:
@@ -34,12 +34,13 @@
|
||||
|
||||
#import "GPBMessage.h"
|
||||
|
||||
#import "objectivec/Tests/MapProto2Unittest.pbobjc.h"
|
||||
#import "objectivec/Tests/MapUnittest.pbobjc.h"
|
||||
#import "objectivec/Tests/Unittest.pbobjc.h"
|
||||
#import "objectivec/Tests/UnittestPreserveUnknownEnum.pbobjc.h"
|
||||
#import "objectivec/Tests/UnittestRuntimeProto2.pbobjc.h"
|
||||
#import "objectivec/Tests/UnittestRuntimeProto3.pbobjc.h"
|
||||
#import "google/protobuf/MapProto2Unittest.pbobjc.h"
|
||||
#import "google/protobuf/MapUnittest.pbobjc.h"
|
||||
#import "google/protobuf/Unittest.pbobjc.h"
|
||||
#import "google/protobuf/UnittestDropUnknownFields.pbobjc.h"
|
||||
#import "google/protobuf/UnittestPreserveUnknownEnum.pbobjc.h"
|
||||
#import "google/protobuf/UnittestRuntimeProto2.pbobjc.h"
|
||||
#import "google/protobuf/UnittestRuntimeProto3.pbobjc.h"
|
||||
|
||||
@interface MessageSerializationTests : GPBTestCase
|
||||
@end
|
||||
@@ -113,9 +114,6 @@
|
||||
// Proto3 optionals should be just like proto2, zero values also get serialized.
|
||||
//
|
||||
|
||||
// Disable clang-format for the macros.
|
||||
// clang-format off
|
||||
|
||||
//%PDDM-DEFINE PROTO3_TEST_SERIALIZE_OPTIONAL_FIELD(FIELD, ZERO_VALUE, EXPECTED_LEN)
|
||||
//% { // optional##FIELD
|
||||
//% Message3Optional *msg = [[Message3Optional alloc] init];
|
||||
@@ -156,6 +154,7 @@
|
||||
//%PROTO3_TEST_SERIALIZE_OPTIONAL_FIELD(Enum, Message3Optional_Enum_Foo, 3)
|
||||
//%PDDM-EXPAND PROTO3_TEST_SERIALIZE_OPTIONAL_FIELDS()
|
||||
// This block of code is generated, do not edit it directly.
|
||||
// clang-format off
|
||||
|
||||
{ // optionalInt32
|
||||
Message3Optional *msg = [[Message3Optional alloc] init];
|
||||
@@ -417,17 +416,17 @@
|
||||
[msg release];
|
||||
}
|
||||
|
||||
// clang-format on
|
||||
//%PDDM-EXPAND-END PROTO3_TEST_SERIALIZE_OPTIONAL_FIELDS()
|
||||
|
||||
// clang-format on
|
||||
}
|
||||
|
||||
- (void)testProto2UnknownEnumToUnknownField {
|
||||
Message3 *orig = [[Message3 alloc] init];
|
||||
|
||||
orig.optionalEnum = Message3_Enum_Extra3;
|
||||
orig.repeatedEnumArray = [GPBEnumArray arrayWithValidationFunction:Message3_Enum_IsValidValue
|
||||
rawValue:Message3_Enum_Extra3];
|
||||
orig.repeatedEnumArray =
|
||||
[GPBEnumArray arrayWithValidationFunction:Message3_Enum_IsValidValue
|
||||
rawValue:Message3_Enum_Extra3];
|
||||
orig.oneofEnum = Message3_Enum_Extra3;
|
||||
|
||||
NSData *data = [orig data];
|
||||
@@ -446,12 +445,15 @@
|
||||
|
||||
XCTAssertEqual([unknownFields countOfFields], 3U);
|
||||
XCTAssertTrue([unknownFields hasField:Message2_FieldNumber_OptionalEnum]);
|
||||
XCTAssertTrue([unknownFields hasField:Message2_FieldNumber_RepeatedEnumArray]);
|
||||
XCTAssertTrue(
|
||||
[unknownFields hasField:Message2_FieldNumber_RepeatedEnumArray]);
|
||||
XCTAssertTrue([unknownFields hasField:Message2_FieldNumber_OneofEnum]);
|
||||
|
||||
GPBUnknownField *field = [unknownFields getField:Message2_FieldNumber_OptionalEnum];
|
||||
GPBUnknownField *field =
|
||||
[unknownFields getField:Message2_FieldNumber_OptionalEnum];
|
||||
XCTAssertEqual(field.varintList.count, 1U);
|
||||
XCTAssertEqual([field.varintList valueAtIndex:0], (uint64_t)Message3_Enum_Extra3);
|
||||
XCTAssertEqual([field.varintList valueAtIndex:0],
|
||||
(uint64_t)Message3_Enum_Extra3);
|
||||
|
||||
field = [unknownFields getField:Message2_FieldNumber_RepeatedEnumArray];
|
||||
XCTAssertEqual(field.varintList.count, 1U);
|
||||
@@ -459,32 +461,36 @@
|
||||
|
||||
field = [unknownFields getField:Message2_FieldNumber_OneofEnum];
|
||||
XCTAssertEqual(field.varintList.count, 1U);
|
||||
XCTAssertEqual([field.varintList valueAtIndex:0], (uint64_t)Message3_Enum_Extra3);
|
||||
XCTAssertEqual([field.varintList valueAtIndex:0],
|
||||
(uint64_t)Message3_Enum_Extra3);
|
||||
|
||||
[msg release];
|
||||
[orig release];
|
||||
}
|
||||
|
||||
- (void)testProto3UnknownEnumPreserving {
|
||||
UnknownEnumsMyMessagePlusExtra *orig = [UnknownEnumsMyMessagePlusExtra message];
|
||||
UnknownEnumsMyMessagePlusExtra *orig =
|
||||
[UnknownEnumsMyMessagePlusExtra message];
|
||||
|
||||
orig.e = UnknownEnumsMyEnumPlusExtra_EExtra;
|
||||
orig.repeatedEArray =
|
||||
[GPBEnumArray arrayWithValidationFunction:UnknownEnumsMyEnumPlusExtra_IsValidValue
|
||||
rawValue:UnknownEnumsMyEnumPlusExtra_EExtra];
|
||||
orig.repeatedPackedEArray =
|
||||
[GPBEnumArray arrayWithValidationFunction:UnknownEnumsMyEnumPlusExtra_IsValidValue
|
||||
rawValue:UnknownEnumsMyEnumPlusExtra_EExtra];
|
||||
orig.repeatedEArray = [GPBEnumArray
|
||||
arrayWithValidationFunction:UnknownEnumsMyEnumPlusExtra_IsValidValue
|
||||
rawValue:UnknownEnumsMyEnumPlusExtra_EExtra];
|
||||
orig.repeatedPackedEArray = [GPBEnumArray
|
||||
arrayWithValidationFunction:UnknownEnumsMyEnumPlusExtra_IsValidValue
|
||||
rawValue:UnknownEnumsMyEnumPlusExtra_EExtra];
|
||||
orig.oneofE1 = UnknownEnumsMyEnumPlusExtra_EExtra;
|
||||
|
||||
// Everything should be there via raw values.
|
||||
|
||||
NSData *data = [orig data];
|
||||
XCTAssertNotNil(data);
|
||||
UnknownEnumsMyMessage *msg = [UnknownEnumsMyMessage parseFromData:data error:NULL];
|
||||
UnknownEnumsMyMessage *msg =
|
||||
[UnknownEnumsMyMessage parseFromData:data error:NULL];
|
||||
|
||||
XCTAssertEqual(msg.e, UnknownEnumsMyEnum_GPBUnrecognizedEnumeratorValue);
|
||||
XCTAssertEqual(UnknownEnumsMyMessage_E_RawValue(msg), UnknownEnumsMyEnumPlusExtra_EExtra);
|
||||
XCTAssertEqual(UnknownEnumsMyMessage_E_RawValue(msg),
|
||||
UnknownEnumsMyEnumPlusExtra_EExtra);
|
||||
XCTAssertEqual(msg.repeatedEArray.count, 1U);
|
||||
XCTAssertEqual([msg.repeatedEArray valueAtIndex:0],
|
||||
UnknownEnumsMyEnum_GPBUnrecognizedEnumeratorValue);
|
||||
@@ -495,8 +501,10 @@
|
||||
UnknownEnumsMyEnum_GPBUnrecognizedEnumeratorValue);
|
||||
XCTAssertEqual([msg.repeatedPackedEArray rawValueAtIndex:0],
|
||||
(UnknownEnumsMyEnum)UnknownEnumsMyEnumPlusExtra_EExtra);
|
||||
XCTAssertEqual(msg.oneofE1, UnknownEnumsMyEnum_GPBUnrecognizedEnumeratorValue);
|
||||
XCTAssertEqual(UnknownEnumsMyMessage_OneofE1_RawValue(msg), UnknownEnumsMyEnumPlusExtra_EExtra);
|
||||
XCTAssertEqual(msg.oneofE1,
|
||||
UnknownEnumsMyEnum_GPBUnrecognizedEnumeratorValue);
|
||||
XCTAssertEqual(UnknownEnumsMyMessage_OneofE1_RawValue(msg),
|
||||
UnknownEnumsMyEnumPlusExtra_EExtra);
|
||||
|
||||
// Everything should go out and come back.
|
||||
|
||||
@@ -505,15 +513,14 @@
|
||||
|
||||
XCTAssertEqual(orig.e, UnknownEnumsMyEnumPlusExtra_EExtra);
|
||||
XCTAssertEqual(orig.repeatedEArray.count, 1U);
|
||||
XCTAssertEqual([orig.repeatedEArray valueAtIndex:0], UnknownEnumsMyEnumPlusExtra_EExtra);
|
||||
XCTAssertEqual([orig.repeatedEArray valueAtIndex:0],
|
||||
UnknownEnumsMyEnumPlusExtra_EExtra);
|
||||
XCTAssertEqual(orig.repeatedPackedEArray.count, 1U);
|
||||
XCTAssertEqual([orig.repeatedPackedEArray valueAtIndex:0], UnknownEnumsMyEnumPlusExtra_EExtra);
|
||||
XCTAssertEqual([orig.repeatedPackedEArray valueAtIndex:0],
|
||||
UnknownEnumsMyEnumPlusExtra_EExtra);
|
||||
XCTAssertEqual(orig.oneofE1, UnknownEnumsMyEnumPlusExtra_EExtra);
|
||||
}
|
||||
|
||||
// Disable clang-format for the macros.
|
||||
// clang-format off
|
||||
|
||||
//%PDDM-DEFINE TEST_ROUNDTRIP_ONEOF(MESSAGE, FIELD, VALUE)
|
||||
//%TEST_ROUNDTRIP_ONEOF_ADV(MESSAGE, FIELD, VALUE, )
|
||||
//%PDDM-DEFINE TEST_ROUNDTRIP_ONEOF_ADV(MESSAGE, FIELD, VALUE, EQ_SUFFIX)
|
||||
@@ -577,6 +584,7 @@
|
||||
//%
|
||||
//%PDDM-EXPAND TEST_ROUNDTRIP_ONEOFS(2, NO)
|
||||
// This block of code is generated, do not edit it directly.
|
||||
// clang-format off
|
||||
|
||||
- (void)testProto2RoundTripOneof {
|
||||
|
||||
@@ -807,8 +815,10 @@
|
||||
[subMessage release];
|
||||
}
|
||||
|
||||
// clang-format on
|
||||
//%PDDM-EXPAND TEST_ROUNDTRIP_ONEOFS(3, YES)
|
||||
// This block of code is generated, do not edit it directly.
|
||||
// clang-format off
|
||||
|
||||
- (void)testProto3RoundTripOneof {
|
||||
|
||||
@@ -1025,9 +1035,8 @@
|
||||
[subMessage release];
|
||||
}
|
||||
|
||||
//%PDDM-EXPAND-END (2 expansions)
|
||||
|
||||
// clang-format on
|
||||
//%PDDM-EXPAND-END (2 expansions)
|
||||
|
||||
- (void)testPackedUnpackedMessageParsing {
|
||||
// packed is optional, a repeated field should parse when packed or unpacked.
|
||||
@@ -1045,13 +1054,15 @@
|
||||
@"Data should differ (packed vs unpacked) use");
|
||||
|
||||
NSError *error = nil;
|
||||
TestPackedTypes *packedParse = [TestPackedTypes parseFromData:unpackedData error:&error];
|
||||
TestPackedTypes *packedParse =
|
||||
[TestPackedTypes parseFromData:unpackedData error:&error];
|
||||
XCTAssertNotNil(packedParse);
|
||||
XCTAssertNil(error);
|
||||
XCTAssertEqualObjects(packedParse, packedOrig);
|
||||
|
||||
error = nil;
|
||||
TestUnpackedTypes *unpackedParsed = [TestUnpackedTypes parseFromData:packedData error:&error];
|
||||
TestUnpackedTypes *unpackedParsed =
|
||||
[TestUnpackedTypes parseFromData:packedData error:&error];
|
||||
XCTAssertNotNil(unpackedParsed);
|
||||
XCTAssertNil(error);
|
||||
XCTAssertEqualObjects(unpackedParsed, unpackedOrig);
|
||||
@@ -1108,7 +1119,8 @@
|
||||
XCTAssertEqualObjects(fieldsData, extsData);
|
||||
|
||||
NSError *error = nil;
|
||||
TestPackedTypes *fieldsParse = [TestPackedTypes parseFromData:extsData error:&error];
|
||||
TestPackedTypes *fieldsParse =
|
||||
[TestPackedTypes parseFromData:extsData error:&error];
|
||||
XCTAssertNotNil(fieldsParse);
|
||||
XCTAssertNil(error);
|
||||
XCTAssertEqualObjects(fieldsParse, fieldsOrig);
|
||||
@@ -1138,7 +1150,8 @@
|
||||
XCTAssertNotNil(extsData);
|
||||
XCTAssertEqualObjects(fieldsData, extsData);
|
||||
|
||||
TestUnpackedTypes *fieldsParse = [TestUnpackedTypes parseFromData:extsData error:NULL];
|
||||
TestUnpackedTypes *fieldsParse =
|
||||
[TestUnpackedTypes parseFromData:extsData error:NULL];
|
||||
XCTAssertNotNil(fieldsParse);
|
||||
XCTAssertEqualObjects(fieldsParse, fieldsOrig);
|
||||
|
||||
@@ -1151,9 +1164,11 @@
|
||||
}
|
||||
|
||||
- (void)testErrorSubsectionInvalidLimit {
|
||||
NSData *data = DataFromCStr("\x0A\x08\x0A\x07\x12\x04\x72\x02\x4B\x50\x12\x04\x72\x02\x4B\x50");
|
||||
NSData *data = DataFromCStr(
|
||||
"\x0A\x08\x0A\x07\x12\x04\x72\x02\x4B\x50\x12\x04\x72\x02\x4B\x50");
|
||||
NSError *error = nil;
|
||||
NestedTestAllTypes *msg = [NestedTestAllTypes parseFromData:data error:&error];
|
||||
NestedTestAllTypes *msg = [NestedTestAllTypes parseFromData:data
|
||||
error:&error];
|
||||
XCTAssertNil(msg);
|
||||
XCTAssertNotNil(error);
|
||||
XCTAssertEqualObjects(error.domain, GPBCodedInputStreamErrorDomain);
|
||||
@@ -1163,7 +1178,8 @@
|
||||
- (void)testErrorSubsectionLimitReached {
|
||||
NSData *data = DataFromCStr("\x0A\x06\x12\x03\x72\x02\x4B\x50");
|
||||
NSError *error = nil;
|
||||
NestedTestAllTypes *msg = [NestedTestAllTypes parseFromData:data error:&error];
|
||||
NestedTestAllTypes *msg = [NestedTestAllTypes parseFromData:data
|
||||
error:&error];
|
||||
XCTAssertNil(msg);
|
||||
XCTAssertNotNil(error);
|
||||
XCTAssertEqualObjects(error.domain, GPBCodedInputStreamErrorDomain);
|
||||
@@ -1193,7 +1209,8 @@
|
||||
- (void)testErrorInvalidSize {
|
||||
NSData *data = DataFromCStr("\x72\x03\x4B\x50");
|
||||
NSError *error = nil;
|
||||
NestedTestAllTypes *msg = [NestedTestAllTypes parseFromData:data error:&error];
|
||||
NestedTestAllTypes *msg = [NestedTestAllTypes parseFromData:data
|
||||
error:&error];
|
||||
XCTAssertNil(msg);
|
||||
XCTAssertNotNil(error);
|
||||
XCTAssertEqualObjects(error.domain, GPBCodedInputStreamErrorDomain);
|
||||
@@ -1203,7 +1220,8 @@
|
||||
- (void)testErrorInvalidTag {
|
||||
NSData *data = DataFromCStr("\x0F");
|
||||
NSError *error = nil;
|
||||
NestedTestAllTypes *msg = [NestedTestAllTypes parseFromData:data error:&error];
|
||||
NestedTestAllTypes *msg = [NestedTestAllTypes parseFromData:data
|
||||
error:&error];
|
||||
XCTAssertNil(msg);
|
||||
XCTAssertNotNil(error);
|
||||
XCTAssertEqualObjects(error.domain, GPBCodedInputStreamErrorDomain);
|
||||
@@ -1213,7 +1231,12 @@
|
||||
- (void)testZeroFieldNum {
|
||||
// These are ConformanceTestSuite::TestIllegalTags.
|
||||
|
||||
const char *tests[] = {"\1DEADBEEF", "\2\1\1", "\3\4", "\5DEAD"};
|
||||
const char *tests[] = {
|
||||
"\1DEADBEEF",
|
||||
"\2\1\1",
|
||||
"\3\4",
|
||||
"\5DEAD"
|
||||
};
|
||||
|
||||
for (size_t i = 0; i < GPBARRAYSIZE(tests); ++i) {
|
||||
NSData *data = DataFromCStr(tests[i]);
|
||||
@@ -1241,25 +1264,27 @@
|
||||
}
|
||||
|
||||
- (void)testErrorRecursionDepthReached {
|
||||
NSData *data = DataFromCStr("\x0A\xF2\x01\x0A\xEF\x01\x0A\xEC\x01\x0A\xE9\x01\x0A\xE6\x01"
|
||||
"\x0A\xE3\x01\x0A\xE0\x01\x0A\xDD\x01\x0A\xDA\x01\x0A\xD7\x01"
|
||||
"\x0A\xD4\x01\x0A\xD1\x01\x0A\xCE\x01\x0A\xCB\x01\x0A\xC8\x01"
|
||||
"\x0A\xC5\x01\x0A\xC2\x01\x0A\xBF\x01\x0A\xBC\x01\x0A\xB9\x01"
|
||||
"\x0A\xB6\x01\x0A\xB3\x01\x0A\xB0\x01\x0A\xAD\x01\x0A\xAA\x01"
|
||||
"\x0A\xA7\x01\x0A\xA4\x01\x0A\xA1\x01\x0A\x9E\x01\x0A\x9B\x01"
|
||||
"\x0A\x98\x01\x0A\x95\x01\x0A\x92\x01\x0A\x8F\x01\x0A\x8C\x01"
|
||||
"\x0A\x89\x01\x0A\x86\x01\x0A\x83\x01\x0A\x80\x01\x0A\x7E"
|
||||
"\x0A\x7C\x0A\x7A\x0A\x78\x0A\x76\x0A\x74\x0A\x72\x0A\x70"
|
||||
"\x0A\x6E\x0A\x6C\x0A\x6A\x0A\x68\x0A\x66\x0A\x64\x0A\x62"
|
||||
"\x0A\x60\x0A\x5E\x0A\x5C\x0A\x5A\x0A\x58\x0A\x56\x0A\x54"
|
||||
"\x0A\x52\x0A\x50\x0A\x4E\x0A\x4C\x0A\x4A\x0A\x48\x0A\x46"
|
||||
"\x0A\x44\x0A\x42\x0A\x40\x0A\x3E\x0A\x3C\x0A\x3A\x0A\x38"
|
||||
"\x0A\x36\x0A\x34\x0A\x32\x0A\x30\x0A\x2E\x0A\x2C\x0A\x2A"
|
||||
"\x0A\x28\x0A\x26\x0A\x24\x0A\x22\x0A\x20\x0A\x1E\x0A\x1C"
|
||||
"\x0A\x1A\x0A\x18\x0A\x16\x0A\x14\x0A\x12\x0A\x10\x0A\x0E"
|
||||
"\x0A\x0C\x0A\x0A\x0A\x08\x0A\x06\x12\x04\x72\x02\x4B\x50");
|
||||
NSData *data = DataFromCStr(
|
||||
"\x0A\xF2\x01\x0A\xEF\x01\x0A\xEC\x01\x0A\xE9\x01\x0A\xE6\x01"
|
||||
"\x0A\xE3\x01\x0A\xE0\x01\x0A\xDD\x01\x0A\xDA\x01\x0A\xD7\x01"
|
||||
"\x0A\xD4\x01\x0A\xD1\x01\x0A\xCE\x01\x0A\xCB\x01\x0A\xC8\x01"
|
||||
"\x0A\xC5\x01\x0A\xC2\x01\x0A\xBF\x01\x0A\xBC\x01\x0A\xB9\x01"
|
||||
"\x0A\xB6\x01\x0A\xB3\x01\x0A\xB0\x01\x0A\xAD\x01\x0A\xAA\x01"
|
||||
"\x0A\xA7\x01\x0A\xA4\x01\x0A\xA1\x01\x0A\x9E\x01\x0A\x9B\x01"
|
||||
"\x0A\x98\x01\x0A\x95\x01\x0A\x92\x01\x0A\x8F\x01\x0A\x8C\x01"
|
||||
"\x0A\x89\x01\x0A\x86\x01\x0A\x83\x01\x0A\x80\x01\x0A\x7E"
|
||||
"\x0A\x7C\x0A\x7A\x0A\x78\x0A\x76\x0A\x74\x0A\x72\x0A\x70"
|
||||
"\x0A\x6E\x0A\x6C\x0A\x6A\x0A\x68\x0A\x66\x0A\x64\x0A\x62"
|
||||
"\x0A\x60\x0A\x5E\x0A\x5C\x0A\x5A\x0A\x58\x0A\x56\x0A\x54"
|
||||
"\x0A\x52\x0A\x50\x0A\x4E\x0A\x4C\x0A\x4A\x0A\x48\x0A\x46"
|
||||
"\x0A\x44\x0A\x42\x0A\x40\x0A\x3E\x0A\x3C\x0A\x3A\x0A\x38"
|
||||
"\x0A\x36\x0A\x34\x0A\x32\x0A\x30\x0A\x2E\x0A\x2C\x0A\x2A"
|
||||
"\x0A\x28\x0A\x26\x0A\x24\x0A\x22\x0A\x20\x0A\x1E\x0A\x1C"
|
||||
"\x0A\x1A\x0A\x18\x0A\x16\x0A\x14\x0A\x12\x0A\x10\x0A\x0E"
|
||||
"\x0A\x0C\x0A\x0A\x0A\x08\x0A\x06\x12\x04\x72\x02\x4B\x50");
|
||||
NSError *error = nil;
|
||||
NestedTestAllTypes *msg = [NestedTestAllTypes parseFromData:data error:&error];
|
||||
NestedTestAllTypes *msg = [NestedTestAllTypes parseFromData:data
|
||||
error:&error];
|
||||
XCTAssertNil(msg);
|
||||
XCTAssertNotNil(error);
|
||||
XCTAssertEqualObjects(error.domain, GPBCodedInputStreamErrorDomain);
|
||||
@@ -1270,7 +1295,9 @@
|
||||
NSData *data = DataFromCStr("\xFF\xFF\xFF\xFF\x0F");
|
||||
GPBCodedInputStream *input = [GPBCodedInputStream streamWithData:data];
|
||||
NSError *error;
|
||||
[GPBMessage parseDelimitedFromCodedInputStream:input extensionRegistry:nil error:&error];
|
||||
[GPBMessage parseDelimitedFromCodedInputStream:input
|
||||
extensionRegistry:nil
|
||||
error:&error];
|
||||
XCTAssertNil(error);
|
||||
}
|
||||
|
||||
@@ -1406,8 +1433,10 @@
|
||||
initWithValidationFunction:Proto2MapEnumPlusExtra_IsValidValue] autorelease];
|
||||
orig.unknownMapField = [[[GPBInt32EnumDictionary alloc]
|
||||
initWithValidationFunction:Proto2MapEnumPlusExtra_IsValidValue] autorelease];
|
||||
[orig.knownMapField setEnum:Proto2MapEnumPlusExtra_EProto2MapEnumFoo forKey:0];
|
||||
[orig.unknownMapField setEnum:Proto2MapEnumPlusExtra_EProto2MapEnumExtra forKey:0];
|
||||
[orig.knownMapField setEnum:Proto2MapEnumPlusExtra_EProto2MapEnumFoo
|
||||
forKey:0];
|
||||
[orig.unknownMapField setEnum:Proto2MapEnumPlusExtra_EProto2MapEnumExtra
|
||||
forKey:0];
|
||||
|
||||
NSData *data = [orig data];
|
||||
XCTAssertNotNil(data);
|
||||
@@ -1419,7 +1448,8 @@
|
||||
XCTAssertEqual(msg1.unknownFields.countOfFields, 1U);
|
||||
|
||||
data = [msg1 data];
|
||||
TestEnumMapPlusExtra *msg2 = [TestEnumMapPlusExtra parseFromData:data error:NULL];
|
||||
TestEnumMapPlusExtra *msg2 =
|
||||
[TestEnumMapPlusExtra parseFromData:data error:NULL];
|
||||
val = -1;
|
||||
XCTAssertEqual(msg2.knownMapField.count, 1U);
|
||||
XCTAssertTrue([msg2.knownMapField getEnum:&val forKey:0]);
|
||||
|
||||
Reference in New Issue
Block a user