代码之家  ›  专栏  ›  技术社区  ›  Stunner

xtest:检查是否未调用回调

  •  0
  • Stunner  · 技术社区  · 5 年前

    我知道如何在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 对象的状态是一个特定的值。

    1 回复  |  直到 5 年前
        1
  •  4
  •   Stunner    5 年前

    这可以通过设置 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)