Как использовать ожидание для уведомления
Я перепробовал все, но единственный способ получить успешный тест - это на самом деле отправить уведомление в функции теста, что в некоторой степени противоречит цели.
У меня есть кнопка. Когда я нажимаю на кнопку, он отправляет уведомление. Как я могу использовать hopeationForNotification, чтобы увидеть, будет ли отправлено это уведомление?
func testExample() {
let app = XCUIApplication()
let button = app.buttons["Button"]
let expectation = expectationForNotification("TEST_NOTE", object: nil) {
(notification: NSNotification!) -> Bool in
print("SUCCESS")
return true
}
button.tap()
waitForExpectationsWithTimeout(5, handler: nil)
}
1 ответ
Мне кажется, что вам придется оправдать ожидания...
func testExample()
{
let app = XCUIApplication()
let button = app.buttons["Button"]
let expectation = expectationWithDescription("waiting for the tap")
expectationForNotification("TEST_NOTE", object: nil)
{
notification in
expectation.fulfill()
return true
}
button.tap()
waitForExpectationsWithTimeout(30)
{
error in
if let e = error
{
XCTFail("\(e.debugDescription)")
}
}
}