初心者の質問で申し訳ありませんが、接続をテストしようとしていますが、完了ハンドラーが実行される前にテストが終了するため、リクエストの戻りを確認できません。説明するには:
-(void)testConnection
{
[[Conector sharedInstance] performAsynchronousRequestWithServerRequest:_srvRequest completionHandler:^(RequestAsynchronousStatus finishStatus, NSData *data) {
if (finishStatus == RequestAsynchronousOK){
_data = data;
NSLog(@"Data OK");
}
}];
XCTAssertNotNil(_data, @"Data was nil");
}
アサートしようとすると、完了ハンドラがまだ実行されていないため、_data は常に nil になります。sendAsynchronousRequest: メソッドから何らかの応答があるまでテストを強制的に待機させるメカニズムがあります。前もって感謝します。