Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Executando o teste sem precisar subir o servidor

A implementação não esta funcionando de acordo.

O servidor esta no ar

Quando atualizo arquivo com a expressão ".expect(200,done);" o "mocha" apresenta o seguinte erro: C:\Caca\Alura\Node\AppNode\casadocodigo>mocha modulo ta sendo carregado atendendo a requisicao atendendo a requisicao

ProdutosController

1) listagem json

0 passing (11ms) 1 failing

1) #ProdutosController listagem json: ReferenceError: done is not defined

at Context. (test\produtos.js:14:25)

-- quando retiro a expressao ".expect(200,done);"

o retorno do mocha é o seguinte:

C:\Caca\Alura\Node\AppNode\casadocodigo>mocha modulo ta sendo carregado atendendo a requisicao atendendo a requisicao

ProdutosController

1) listagem json

0 passing (17ms) 1 failing

1) #ProdutosController listagem json: ReferenceError: done is not defined at Context. (test\produtos.js:14:25)

----------------------------------------------------------------
//\AppNode\casadocodigo\test\produtos.js
var v_express = require('../config/express')();
var v_request = require('supertest')(v_express);

describe('#ProdutosController',function(){

    it('listagem json',function(){

        //v_request.get('http://localhost:3000/produtos')
        v_request.get('/produtos')
            .set('Accept','application/json')
            .expect('Content-Type',/json/)
            .expect(200,done);
        });  
    });
1 resposta
solução!

Olá, Luis. Tudo bem?

Como você está usando o supertest não é necessário deixar o servidor de pé, a responsabilidade de subir o servidor é dele.

O ponto de ele estar reclamando de não ter o done é porquê você acabou esquecendo de passar ele no parâmetro do callback que o it recebe, altere seu código para ficar assim:

describe('#ProdutosController',function(){

// adicionei o done como parâmentro do callback
    it('listagem json',function(done){

        //v_request.get('http://localhost:3000/produtos')
        v_request.get('/produtos')
            .set('Accept','application/json')
            .expect('Content-Type',/json/)
            .expect(200,done);
        });  
    });

Se ainda sim não funcionar dá um toque que vamos mais a fundo na investigação :-)