Ce code fait mes tests mocha passent sans erreur:Mocha avant la fonction - lambda sans erreurs accolades; lambda avec des accolades fonctionne
before(done => {
mockgoose
.prepareStorage()
.then(() => mongoose.connect('mongodb://example.com/TestingDB'))
.then(done)
})
it('passes', done => done())
Mais enlever les accolades dans les causes bloc before
l'erreur:
before(done =>
mockgoose
.prepareStorage()
.then(() => mongoose.connect('mongodb://example.com/TestingDB'))
.then(done)
)
it('passes', done => done())
1) "before all" hook
0 passing (2s)
1 failing
1) "before all" hook:
Error: Resolution method is overspecified. Specify a callback *or* return a Promise; not both.
at process._tickCallback (internal/process/next_tick.js:109:7)
Est-ce que quelqu'un sait pourquoi? Si plus de contexte est nécessaire, je peux obliger.
Ahhhh, oui. En utilisant le lambda sans accolades, il y a un retour implicite! Donc, pas d'accolades, je retournais un Promsie. Et en fournissant 'done', je spécifiais aussi un rappel. Je vais juste me débarrasser du «fait» et être sur ma voie joyeuse. Merci! Je suis nouveau dans cette scène Javascript :) – jrahhali