[Résolu] Plantage dans une classe test

Bonjour,
En executant la classe test ci-dessous j'ai ce message que je ne comprends pas. Le deuxième test passe sans problème. Voici un extrait de mon code.
func testLoginWithValidEmailAndPasswordPassword() {
let e = expectation(description: "testLoginWithValidEmailAndPasswordPassword")
// Test Valid email
let u = User(email: k.validUserEmail)
u.setPassword(k.validPassword)
u.login(completion: {success, error in
XCTAssertTrue(success)
e.fulfill()
})
// Wait for the expectation to be fulfilled
waitForExpectations(timeout: 10) { error in
if let error = error {
XCTFail("waitForExpectationsWithTimeout errored: \(error)")
}
}
}
func testLoginWithoutPassword() {
let e = expectation(description: "testLoginWithoutPassword")
// Test Valid email
let u = User(email: k.validUserEmail)
u.login(completion: {success, error in
XCTAssertFalse(success)
e.fulfill()
})
// Wait for the expectation to be fulfilled
waitForExpectations(timeout: 10) { error in
if let error = error {
XCTFail("waitForExpectationsWithTimeout errored: \(error)")
}
}
}
Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'API violation - multiple calls made to -[XCTestExpectation fulfill] for testLoginWithValidEmailAndPasswordPassword..
Mots clés:
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Merci Céroce pour ta réponse
Comment on fait cela ?
Le truc que je ne comprend pas c'est que je lance mes test un par un avec la petite flèche sur la droite du code. Je n'ai pas mis le code mais j'ai 3 test dont le code est très similaire et seule la première ne marche pas.
Clique sur le + en bas à droite.
Ajoute un Exception Breakpoint.
Par exemple, il est possible que le bloc de completion soit appelé deux fois par ton code. Tu aurais donc bien un bug ;-)
C'est exactement cela, un bug :]
Merci