gpt4 book ai didi

objective-c - 使用 OCMock 模拟 block 期望

转载 作者:可可西里 更新时间:2023-11-01 06:16:28 27 4
gpt4 key购买 nike

我是 OCMock 的新手,我打算模拟一个请求调用。需要模拟的 API 如下定义执行。

   [ProductRequest requestProductUpdateUrl: @"testUrl" withParameters:params   error:^(NSString *updateUrl, NSError *error){
if (!error && [updateUrl length] !=0 ) {
NSLog(@"Success");
} else {
NSLog(@"Error");
}
}];

关于如何使用 OCMock 模拟方法 requestProductUpdateUrl 有什么想法吗?

最佳答案

此功能尚未实现,但我认为他们正在努力。我也必须做这样的事情:

semaphore = dispatch_semaphore_create(0);
[myObject myFunctionWithCallback:^(BOOL success){
if(success)
dispatch_semaphore_signal(semaphore);
else
STFail(@"Call failed"); dispatch_semaphore_signal(semaphore);

}];
[self waitForSemaphore];

等待函数是这样的:

- (void)waitForSemaphore;
{
float step_duration = .1;
float wait_steps = 2 / step_duration;
while (dispatch_semaphore_wait(semaphore, dispatch_time(DISPATCH_TIME_NOW, NSEC_PER_SEC / 10)) && wait_steps > 0){
CFRunLoopRunInMode(kCFRunLoopDefaultMode,step_duration, YES);
wait_steps--;
}

if (wait_steps <= 0) {
STFail(@"Timeout!");
}

关于objective-c - 使用 OCMock 模拟 block 期望,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12838143/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com