テストしたいnode.jsサーバーからTwitterのAPIを呼び出すプロジェクトがあります。ただし、Twitter API(OAuthと実際に呼び出しているAPI)をテストしたくないので、スタブ化するのが最善だと思いました。
おそらくこれをサポートするsinon.jsを見つけました。私はこれを行う方法の例を見つけていません、そしてこれが以前に行われたことがあるかどうか疑問に思いました。もしそうなら、いくつかのサンプルコードを見るのは本当に役に立ちます。
API を呼び出すために何をしていますか?
次のメソッドを使用するとしますapi.call('url', function (error, response) {...})
。
コールバックをシノン、穏やか、または好きなもので「偽造」できます。
穏やかに使用する例:
gently.expect(api, 'call', function (url, callback) {
assert.equal(url, 'http://api.twitter.com/...');
callback(Error('Fake error'), null);
});