J'utilise Frisy avec un nœud jasmin pour tester une API Meteor.Tests d'enfants ignorés dans Frisby JS avec nœud jasmin
Je souhaite tester la suppression d'une discussion dans une application de discussion. Pour cela, je dois créer une nouvelle discussion dans le chat et ajouter un message dans la discussion.
J'ai remarqué que mon test échoue si je le mets après la seconde méthode .then(). Il échoue aussi après le troisième .then(). Cependant, cela fonctionne correctement après la première méthode .then().
Exemple de code avec test explicite échoué expect (false) .toBe (true);:
var frisby = require('frisby');
describe("chat update", function() {
it("message added", function(done) {
frisby.post('http://localhost:3000/api/chat', {
name: "remove"
})
.then(function (res) {
let id = res._body.id;
expect(false).toBe(true); // (1) it fails the test
frisby.post('http://localhost:3000/api/chat/'+id+'/addmessage',
{
auteur: "Samuel",
message: "My message"
}
)
.then(function (res) {
expect(false).toBe(true); // (2) Without (1) it's ignored by frisby
frisby.post('http://localhost:3000/api/chat/remove',
{id: id}
)
.then(function (res) {
expect(false).toBe(true); // (3) Without (1) it's ignored by frisby
})
});
})
.done(done);
})
});
Si je lance le test, il échouera grâce à attendre (false) .toBe (true); // (1) il échoue le test ligne. Si je supprime cette ligne, le test se déroulera et le jasmin le validera comme bon.
Connaissez-vous un moyen d'ignorer les tests (2) et (3)?
Utilisez-vous l'ancienne version de Frisby ou la version plus récente? Je demande, car la "vieille" version utilise le jasmin-node et la nouvelle utilise Jest. –
J'utilise le plus récent. J'ai trouvé la solution et je l'ai mis comme une réponse. J'ai oublié les opérateurs de retour. Merci. – jedema