加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

在什么情况下会有一个使用期望在快速测试中进行通知

发布时间:2020-12-14 05:19:02 所属栏目:百科 来源:网络整理
导读:我有点困惑,因为什么/什么时候与expectationForNotification而不是expectingWithDescription.我无法在 swift中找到任何明确的示例,用于何时以及您使用此呼叫. 我假设它可能测试通知,但它看起来可能只是通知中心的整个addObserver()调用的更方便的包装. 有人
我有点困惑,因为什么/什么时候与expectationForNotification而不是expectingWithDescription.我无法在 swift中找到任何明确的示例,用于何时以及您使用此呼叫.

我假设它可能测试通知,但它看起来可能只是通知中心的整个addObserver()调用的更方便的包装.

有人可以简要解释一下它的作用,什么时候使用它,还有几行示例代码?

谢谢

正如您已经想象的期望值.通知是检查通知是否被提出的便利期望.

这个测试:

func testItShouldRaiseAPassNotificationV1() {
    let expectation = expectationWithDescription("Notification Raised")
    let sub = NSNotificationCenter.defaultCenter().addObserverForName("evPassed",object: nil,queue: nil) { (not) -> Void in
        expectation.fulfill()
    }
    NSNotificationCenter.defaultCenter().postNotificationName("evPassed",object: nil)
    waitForExpectationsWithTimeout(0.1,handler: nil)
    NSNotificationCenter.defaultCenter().removeObserver(sub)
}

可以替换这个:

func testItShouldRaiseAPassNotificationV2() {
    expectationForNotification("evPassed",handler: nil)
    NSNotificationCenter.defaultCenter().postNotificationName("evPassed",handler: nil)
}

你可以在这个Objc.io number中找到一个很好的解释.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读