1

Mocha を使用して Node.js API をテストしています。アップデートが利用可能かどうかを確認するルートをテストする必要があります。ルートは、現在インストールされているもののバージョン番号を受け入れ、HTTP 要求を介して取得した利用可能なバージョンと比較します。

利用可能な最新バージョンを取得するには、モデル メソッドが呼び出されます。Client.availableVersion()HTTP リクエストを作成し、いくつかの簡単な操作を行い、利用可能なバージョンをコールバック関数に渡します。update()かなり簡単なことですが、ルートをテストしたいので、によって返されるものを制御できるようにする必要がありClient.availableVersion()ます。

私が紹介されたMochaのドキュメントとSinonのドキュメントを読んだ...私は立ち往生しています。Sinon が必要なものを処理してくれるように思えますが、実装には少し混乱しています。

これが私のルートメソッドのスニペットです:

update: function( req, res, next ) {
  var installedVersion = req.params.version;

  client.availableVersion( function( err, availableVersion ) {
    if( !err ) {
      if( parseInt( installedVersion, 10 ) < parseInt( availableVersion, 10 ) ) {
        // SEND UPDATE AVAILABLE RESPONSE
      }

      // SEND NO UPDATE AVAILABLE RESPONSE
    }
    else {
      res.send( 500, err );
    }
  })
}

正しい方向に微調整していただければ幸いです。

4

1 に答える 1