2016-10-13 5 views
0

Mochaのアフターフックで私のWebサーバーにhttp削除リクエストを送信しようとしています。関連するコードは次のとおりです。MochaJSはアフターフックでHTTPリクエストを送信します

after(function() { 
    console.log('here at after'); 
    request.del('http://localhost:3000/api/deleteAllTasks', function(req, res) { 
     console.log(req); 
    }); 
}); 

問題点は、削除エンドポイントが決してヒットしないことです。 console.logsは "here at after"ですが、request.delのコールバックでconsole.logsを実行することはありません。私はこれを引き起こしているのか分からない。私はそれが正常にカールの要求を送ったので、エンドポイントが動作することを知っています。誰にでもアイデアはありますか?最終的に、この特定のテストスイートを実行した後、このエンドポイントでDBをクリアします。

答えて

0

実際に非同期要求が行われる前にスクリプトが終了していることを賭けています。 after(function() {...after(function(done) {...のような「done」パラメータを含めて変更し、内部コールバック内でdone()を呼び出してみてください。

+0

助けてくれてありがとう!これはそれを修正! – user3513466

+0

ようこそ。次の人を助けるために答えを正しいとマークしてください! – leetibbett

0

ここでは、あなたのテスト作業を行う新しいブロックがあります。 leetibbettは完全に正しいです。

after(function(done) { 
    console.log('here at after'); 
    request.del('http://localhost:3000/api/deleteAllTasks', function(err, res) { 
     console.log(res); 
     done(); 
    }); 
}); 
関連する問題