1

我知道如何在 XCT 中等待带有期望的回调。但是,如何测试逆呢?

以下是我作为测试一部分的测试示例:

manager.state = .initialized
let exp = expectation(description: "expectation")
manager.login { state, error in
    exp.fulfill()
    XCTAssert(state == .initialized)
    XCTAssertNil(error)
}
waitForExpectations(timeout: 1)

在我正在编写的下一个测试中,我想要一个测试以确保当我manager的对象的状态是特定值时不会调用回调。

4

1 回答 1

4

这可以通过像这样设置isInverted = true对象XCTestExpectation来完成:

manager.state = .initialized
let exp = expectation(description: "inverted expectation")
exp.isInverted = true
manager.login { state, error in
    exp.fulfill()
}
waitForExpectations(timeout: 1)
于 2020-03-19T00:37:30.000 回答