|  | @@ -249,8 +249,10 @@ BOOL isRemoteInteropTest(NSString *host) {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  - (void)testLargeUnaryRPCWithV2API {
 | 
	
		
			
				|  |  |    XCTAssertNotNil([[self class] host]);
 | 
	
		
			
				|  |  | -  __weak XCTestExpectation *expectRecvMessage = [self expectationWithDescription:@"LargeUnaryWithV2API received message"];
 | 
	
		
			
				|  |  | -  __weak XCTestExpectation *expectRecvComplete = [self expectationWithDescription:@"LargeUnaryWithV2API received complete"];
 | 
	
		
			
				|  |  | +  __weak XCTestExpectation *expectRecvMessage =
 | 
	
		
			
				|  |  | +      [self expectationWithDescription:@"LargeUnaryWithV2API received message"];
 | 
	
		
			
				|  |  | +  __weak XCTestExpectation *expectRecvComplete =
 | 
	
		
			
				|  |  | +      [self expectationWithDescription:@"LargeUnaryWithV2API received complete"];
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |    RMTSimpleRequest *request = [RMTSimpleRequest message];
 | 
	
		
			
				|  |  |    request.responseType = RMTPayloadType_Compressable;
 | 
	
	
		
			
				|  | @@ -263,24 +265,26 @@ BOOL isRemoteInteropTest(NSString *host) {
 | 
	
		
			
				|  |  |    options.hostNameOverride = [[self class] hostNameOverride];
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |    GRPCUnaryProtoCall *call = [_service
 | 
	
		
			
				|  |  | -                              unaryCallWithMessage:request
 | 
	
		
			
				|  |  | -                              responseHandler:[[InteropTestsBlockCallbacks alloc] initWithInitialMetadataCallback:nil
 | 
	
		
			
				|  |  | -                                                                                                  messageCallback:^(id message) {
 | 
	
		
			
				|  |  | -                                                                                                    XCTAssertNotNil(message);
 | 
	
		
			
				|  |  | -                                                                                                    if (message) {
 | 
	
		
			
				|  |  | -                                                                                                      RMTSimpleResponse *expectedResponse = [RMTSimpleResponse message];
 | 
	
		
			
				|  |  | -                                                                                                      expectedResponse.payload.type = RMTPayloadType_Compressable;
 | 
	
		
			
				|  |  | -                                                                                                      expectedResponse.payload.body = [NSMutableData dataWithLength:314159];
 | 
	
		
			
				|  |  | -                                                                                                      XCTAssertEqualObjects(message, expectedResponse);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                                                                                                      [expectRecvMessage fulfill];
 | 
	
		
			
				|  |  | -                                                                                                    }
 | 
	
		
			
				|  |  | -                                                                                                  }
 | 
	
		
			
				|  |  | -                                                                                                    closeCallback:^(NSDictionary *trailingMetadata, NSError *error) {
 | 
	
		
			
				|  |  | -                                                                                                      XCTAssertNil(error, @"Unexpected error: %@", error);
 | 
	
		
			
				|  |  | -                                                                                                      [expectRecvComplete fulfill];
 | 
	
		
			
				|  |  | -                                                                                                    }]
 | 
	
		
			
				|  |  | -                              callOptions:options];
 | 
	
		
			
				|  |  | +      unaryCallWithMessage:request
 | 
	
		
			
				|  |  | +           responseHandler:[[InteropTestsBlockCallbacks alloc] initWithInitialMetadataCallback:nil
 | 
	
		
			
				|  |  | +                               messageCallback:^(id message) {
 | 
	
		
			
				|  |  | +                                 XCTAssertNotNil(message);
 | 
	
		
			
				|  |  | +                                 if (message) {
 | 
	
		
			
				|  |  | +                                   RMTSimpleResponse *expectedResponse =
 | 
	
		
			
				|  |  | +                                       [RMTSimpleResponse message];
 | 
	
		
			
				|  |  | +                                   expectedResponse.payload.type = RMTPayloadType_Compressable;
 | 
	
		
			
				|  |  | +                                   expectedResponse.payload.body =
 | 
	
		
			
				|  |  | +                                       [NSMutableData dataWithLength:314159];
 | 
	
		
			
				|  |  | +                                   XCTAssertEqualObjects(message, expectedResponse);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                                   [expectRecvMessage fulfill];
 | 
	
		
			
				|  |  | +                                 }
 | 
	
		
			
				|  |  | +                               }
 | 
	
		
			
				|  |  | +                               closeCallback:^(NSDictionary *trailingMetadata, NSError *error) {
 | 
	
		
			
				|  |  | +                                 XCTAssertNil(error, @"Unexpected error: %@", error);
 | 
	
		
			
				|  |  | +                                 [expectRecvComplete fulfill];
 | 
	
		
			
				|  |  | +                               }]
 | 
	
		
			
				|  |  | +               callOptions:options];
 | 
	
		
			
				|  |  |    [call start];
 | 
	
		
			
				|  |  |    [self waitForExpectationsWithTimeout:TEST_TIMEOUT handler:nil];
 | 
	
		
			
				|  |  |  }
 | 
	
	
		
			
				|  | @@ -602,7 +606,8 @@ BOOL isRemoteInteropTest(NSString *host) {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  - (void)testCancelAfterBeginRPCWithV2API {
 | 
	
		
			
				|  |  |    XCTAssertNotNil([[self class] host]);
 | 
	
		
			
				|  |  | -  __weak XCTestExpectation *expectation = [self expectationWithDescription:@"CancelAfterBeginWithV2API"];
 | 
	
		
			
				|  |  | +  __weak XCTestExpectation *expectation =
 | 
	
		
			
				|  |  | +      [self expectationWithDescription:@"CancelAfterBeginWithV2API"];
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |    // A buffered pipe to which we never write any value acts as a writer that just hangs.
 | 
	
		
			
				|  |  |    __block GRPCStreamingProtoCall *call = [_service
 | 
	
	
		
			
				|  | @@ -699,7 +704,7 @@ BOOL isRemoteInteropTest(NSString *host) {
 | 
	
		
			
				|  |  |  - (void)testCancelAfterFirstRequestWithV2API {
 | 
	
		
			
				|  |  |    XCTAssertNotNil([[self class] host]);
 | 
	
		
			
				|  |  |    __weak XCTestExpectation *completionExpectation =
 | 
	
		
			
				|  |  | -  [self expectationWithDescription:@"Call completed."];
 | 
	
		
			
				|  |  | +      [self expectationWithDescription:@"Call completed."];
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |    GRPCMutableCallOptions *options = [[GRPCMutableCallOptions alloc] init];
 | 
	
		
			
				|  |  |    options.transportType = self.class.transportType;
 | 
	
	
		
			
				|  | @@ -707,20 +712,20 @@ BOOL isRemoteInteropTest(NSString *host) {
 | 
	
		
			
				|  |  |    options.hostNameOverride = [[self class] hostNameOverride];
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |    id request =
 | 
	
		
			
				|  |  | -  [RMTStreamingOutputCallRequest messageWithPayloadSize:@21782 requestedResponseSize:@31415];
 | 
	
		
			
				|  |  | +      [RMTStreamingOutputCallRequest messageWithPayloadSize:@21782 requestedResponseSize:@31415];
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |    __block GRPCStreamingProtoCall *call = [_service
 | 
	
		
			
				|  |  | -                                          fullDuplexCallWithResponseHandler:[[InteropTestsBlockCallbacks alloc]
 | 
	
		
			
				|  |  | -                                                                             initWithInitialMetadataCallback:nil
 | 
	
		
			
				|  |  | -                                                                             messageCallback:^(id message) {
 | 
	
		
			
				|  |  | -                                                                               XCTFail(@"Received unexpected response.");
 | 
	
		
			
				|  |  | -                                                                             }
 | 
	
		
			
				|  |  | -                                                                             closeCallback:^(NSDictionary *trailingMetadata,
 | 
	
		
			
				|  |  | -                                                                                             NSError *error) {
 | 
	
		
			
				|  |  | -                                                                               XCTAssertEqual(error.code, GRPC_STATUS_CANCELLED);
 | 
	
		
			
				|  |  | -                                                                               [completionExpectation fulfill];
 | 
	
		
			
				|  |  | -                                                                             }]
 | 
	
		
			
				|  |  | -                                          callOptions:options];
 | 
	
		
			
				|  |  | +      fullDuplexCallWithResponseHandler:[[InteropTestsBlockCallbacks alloc]
 | 
	
		
			
				|  |  | +                                            initWithInitialMetadataCallback:nil
 | 
	
		
			
				|  |  | +                                            messageCallback:^(id message) {
 | 
	
		
			
				|  |  | +                                              XCTFail(@"Received unexpected response.");
 | 
	
		
			
				|  |  | +                                            }
 | 
	
		
			
				|  |  | +                                            closeCallback:^(NSDictionary *trailingMetadata,
 | 
	
		
			
				|  |  | +                                                            NSError *error) {
 | 
	
		
			
				|  |  | +                                              XCTAssertEqual(error.code, GRPC_STATUS_CANCELLED);
 | 
	
		
			
				|  |  | +                                              [completionExpectation fulfill];
 | 
	
		
			
				|  |  | +                                            }]
 | 
	
		
			
				|  |  | +                            callOptions:options];
 | 
	
		
			
				|  |  |    [call start];
 | 
	
		
			
				|  |  |    [call writeMessage:request];
 | 
	
		
			
				|  |  |    [call cancel];
 |