J'ai un test écrit en E2E
Protractor-Jasmine
pour ma Angular2-TypeScript
application comme ci-dessous,Faire request.post exécuter dans l'ordre
it("Perform Some Action", function() {
element(by.css('[ng-reflect-placeholder="Email"]')).sendKeys(test_email);
element(by.css('[ng-reflect-placeholder="Password"]')).sendKeys("pass");
element(by.css('[ng-reflect-placeholder="Confirm Password"]')).sendKeys("conf pass");
element(by.buttonText("CONTINUE")).click();
request.post(
'myAPIEndPoint',
{ json: { emailaddress: test_email,user: "user1",code: "1234" } },
function(error, response, body) {
if (!error && response.statusCode == 200) {
console.log(body)
var info = JSON.parse(body);
//Do something
}
}
);
Maintenant, le problème que je suis face est que, la request.post
devient appelée avant les déclarations ci-dessus et provoquant l'échec de mes tests car la réponse d'api post call n'aura de valeur que si les instructions ci-dessus seront exécutées avant l'appel.
Quelle est la bonne façon de s'assurer que le post-call
est fait seulement après que les instructions ci-dessus sont exécutées?