私はJestの初心者です。私は自分のものを嘲笑してしまったが、モジュールを嘲笑しているようだ。特にコンストラクタ。私はテストでは、このような何かをしたいと思います依存関係のコンストラクタをモックするJest
const AWS = require("aws-sdk")
cw = new AWS.CloudWatch({apiVersion: "2010-08-01"})
...
function myMetrics(params) {
cw.putMetricData(params, function(err, data){})
}
usage.js
。
const AWS = jest.mock("aws-sdk")
class FakeMetrics {
constructor() {}
putMetricData(foo,callback) {
callback(null, "yay!")
}
}
AWS.CloudWatch = jest.fn((props) => new FakeMetrics())
しかし、私はCWは私が任意のポインタのためのGREATFULだろうので、私のアプローチは、「慣用未満」であるかもしれないことを認識しmockConstructor
ないFakeMetrics
あるusage.js
でそれを使用するために来るとき。
この問題は、モジュールが嘲笑されている方法である最小の例https://github.com/ollyjshaw/jest_constructor_so
npm install -g jest
jest
それはのようなものでなければなりません。 http://stackoverflow.com/help/mcveを提供してください。 – estus
Thanks estus。実行可能なサンプルをここに追加しました。https://github.com/ollyjshaw/jest_constructor_so –