AWS SDK for NodeJSを使用しています。
モジュール ( moduleFoo
) を次のようにセットアップしました。
if (global.GENTLY) { require = GENTLY.hijack(require); }
var aws = require("aws-sdk"),
ec2;
exports.initEC2Client = function () {
ec2 = new aws.EC2();
};
exports.doSomething = function () {
var params;
// params gets populated here...
ec2.Client.describeInstances(params, function (err, data) {
// logic!
}
}
メソッドをスタブ化しようとしていdescribeInstances
ます。
EC2
次のようにしてクラスをスタブできることはわかっています。
gently.stub("aws-sdk", "EC2");
Gently docsに従って、コンストラクターをスタブ化することで、その偽のインスタンスを作成できます。
var ec2Stub = gently.stub("aws-sdk", "EC2"),
ec2;
gently.expect(ec2Stub, "new", function () {
ec2 = this;
});
moduleFoo.initEC2Client();
この時点で行き詰まります。私がする必要があるのは、に属するオブジェクトのメソッドをスタブ化することec2
です。Gently を使用してこれにアプローチする方法はありますか?