Opa galera, beleza? Então... eu havia executado o código igual ao do professor, segue o código:
var express = require('../config/express');
var request = require('supertest')(express);
describe('#ProdutosController',function(){
it('#listagem json', function(done){
request.get('/produtos')
.set('Accept','application/json')
.expect('Content-Type',/json/)
.expect(200,done);
});
});
Porém ao executar no terminal
node node_modules/mocha/bin/mocha
apareceu este erro:
#ProdutosController
1) #listagem json
0 passing (2s)
1 failing
1) #ProdutosController
#listagem json:
Error: Timeout of 2000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves. (C:\Users\rodri\Dropbox\backup\Estudo\Alura\Node.js\casadocodigo\test\produtos.js)
Não sei bem qual o erro, mas fiz a seguinte alteração
...
.expect(200);
done();
e funcionou corretamente, porém, gostaria de saber mais sobre isso... qual o motivo de ter aceitado o done fora do que dentro dos parâmetros?