gpt4 book ai didi

iphone - 单元测试 NSOperation?

转载 作者:可可西里 更新时间:2023-11-01 03:38:24 26 4
gpt4 key购买 nike

我想测试一个 NSOperation 子类。我试图在我的 SenTestCase 子类中这样做:

- (void)setUp {
[super setUp];

_importQueue = [[NSOperationQueue alloc] init];

[_importQueue setMaxConcurrentOperationCount:1];
[_importQueue waitUntilAllOperationsAreFinished];
}

- (void)tearDown {
[_importQueue release];

[super tearDown];
}

- (void)testSomeImport {
ImportOperation *op = [[ImportOperation alloc] initWithFile:...];
[_importQueue addOperation:op];
[op setDelegate:self];
[op release];
}

- (void)opDidFinish:(ImportOperation *)op { // ImportOperation delegate method
// Not getting called
}

但测试在 NSOperation 完成执行之前完成,尽管指定了 waitUntilAllOperationsAreFinished

关于如何防止测试在我的操作完成之前完成的任何想法?

最佳答案

您需要在将操作添加到队列后调用 waitUntilAllOperationsAreFinished,而不是在 setUp 中调用。

关于iphone - 单元测试 NSOperation?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6653982/

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