diff options
author | Yilun Chong <yilunchong@google.com> | 2017-06-28 12:17:24 -0700 |
---|---|---|
committer | Yilun Chong <yilunchong@google.com> | 2017-06-28 12:17:24 -0700 |
commit | 06c9057cc32f0155f277dd0842f83b5ac362c386 (patch) | |
tree | 2ed96e86c813772f78af4cc0b57029a94da8d772 /conformance | |
parent | 5e7e2d3bb8435e4ea20649a9baf9f7420f5f0cce (diff) |
add objec support
Diffstat (limited to 'conformance')
-rw-r--r-- | conformance/conformance_objc.m | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/conformance/conformance_objc.m b/conformance/conformance_objc.m index ef037f84..db3cc3e7 100644 --- a/conformance/conformance_objc.m +++ b/conformance/conformance_objc.m @@ -71,12 +71,20 @@ static ConformanceResponse *DoTest(ConformanceRequest *request) { break; case ConformanceRequest_Payload_OneOfCase_ProtobufPayload: { - NSError *error = nil; - testMessage = [TestAllTypes parseFromData:request.protobufPayload - error:&error]; - if (!testMessage) { - response.parseError = - [NSString stringWithFormat:@"Parse error: %@", error]; + if ([request.messageType isEqualToString:@"proto3"]) { + NSError *error = nil; + testMessage = [TestAllTypes parseFromData:request.protobufPayload + error:&error]; + if (!testMessage) { + response.parseError = + [NSString stringWithFormat:@"Parse error: %@", error]; + } + } else if ([request.messageType isEqualToString:@"proto2"]) { + response.skipped = @"ObjC doesn't support proto2"; + break; + } else { + Die(@"Protobuf request doesn't have specific payload type"); + break; } break; } |