0

私はノードとモカを学んでおり、以下のテストを行っています (実稼働コードはデータベース内のフィールドをインクリメントします)。

機能しているかどうかを確認するために、/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();
      });
    })

  });
});
4

1 に答える 1

1

whereMocha テスト ケースのクエリに次の句 がありません。

Edm.find({ where : { campaignguid: '1234' }})
           ^^^^^
于 2013-05-01T05:57:55.247 に答える