模擬對象,我需要用以下幫助:考察一個方法參數:我在寫一些BDD測試一個客戶端API結構如下:獼猴桃
@protocol MyAPIClientDelegate <NSObject>
-(void)myCallbackMethod:(id)response;
@end
// BEGIN: MyAPIClientSpec.h
SPEC_BEGIN(MyAPIClientSpec)
describe(@"MyAPIClientAPI ", ^{
__block MyAPI *api = nil;
__block id delegateMock = nil;
beforeEach(^{
delegateMock = [KWMock mockForProtocol:@protocol(MyAPIClientDelegate)];
api = [MyAPI APIClientWithDelegate:delegateMock];
});
afterEach(^{
delegateMock = nil;
api = nil;
});
it(@"should return a JSON { result: 'ok', token: <SOME_TOKEN> }", ^{
[[api should] receive:@selector(myMethodCall:)];
[[[delegateMock shouldEventually] receive] myCallbackMethod:any()];
[api myMethodCall];
});
});
SPEC_END
正如你可以在代碼中看到上面,我使用any()來檢查至少有一個參數發送給委託。
有無論如何定義一個函數(或objective-c塊)來檢查參數嗎?
謝謝!
現在懲戒新西蘭人?開始國際事件?休閒種族主義? –