摩卡测试总是通过

Mocha test alway pass

我想在我的网页上使用 mocha 测试基本身份验证:

describe('Test GET /messages', function(){

    describe('Test HTTP basic authentication', function(){

       it('should return 200 because right credentials', function(done){
           request.get(createCustomRequest(true, "/messages", "test", "test"), function(err, res, body){
               if (err) {
                   console.error(err)
               } else {
                    // Whatever, it will always pass
                    assert.equal(2400, res.statusCode);
               }
           }, done());
        });
  });

function createCustomRequest(withAuth, service, username, password){
    if(!withAuth){
        return {
            url: URL+service,
            followRedirect: false
        };
    } else {
        return {
            url: URL+service,
            followRedirect: false,
            headers: {
                'Authorization': createCredentials(username, password)
            }
        };
    }
}

从前面的代码来看,我不明白为什么测试总是通过。我认为这与 done() 回调有关。

我这里做错了什么?

done() 应在 request.get():

的回调中调用
it('should return 200 because right credentials', function(done) {
  request.get(createCustomRequest(true, "/messages", "test", "test"), function(err, res, body){
    if (err) {
      done(err);
      return;
    }
    assert.equal(2400, res.statusCode);
    done();
  });
});