私はノードとモカを学んでおり、以下のテストを行っています (実稼働コードはデータベース内のフィールドをインクリメントします)。
機能しているかどうかを確認するために、/events への呼び出しの前後にこのフィールドの値を出力しています (2 つの console.log ステートメントを参照)。
現時点では、値出力はどちらの場合も 1 です。テスト以外では、コードは正常に機能しており、フィールドがインクリメントされています。
テスト コードのコールバックと関係があると思われます (ノード コードを正しく記述してテストする方法をまだ学んでいるので、これはほぼ確実に当てはまります)。
うまくいけば、誰かが問題を見つけることができます。これがテストしている製品コードはこちら(gist) です。
it('"processed" event increases processed count', function(done) {
Edm.find({campaignguid: '1234'}).success(function(edm) {
edmProcessedCount = edm.processed;
console.log("pre: " + edmProcessedCount); // result is 1
request.post('http://localhost:3001/events?campaignguid=1234&event=processed', function(err, res, body) {
Edm.find({campaignguid: '1234'}).success(function(edmm) {
console.log("post : " + edmm.processed); // result is 1 (should be 2)
done();
});
})
});
});