【发布时间】:2017-12-22 09:58:00
【问题描述】:
在 index.js 中,我有以下内容
exports.write = functions.https.onRequest((req, res) => {
admin.database()
.ref(`xxx/yyy`)
.push()
.set({timestamp: admin.database.ServerValue.TIMESTAMP});
res.status(200).end();
});
在我的 test.js 中,我存根 admin.database() 如下:
const refStub = sinon.stub();
setStub = sinon.stub();
refStub.withArgs('xxx/yyy').returns({push: () => ({key: 'fakeKey', set: setStub})});
databaseStub = sinon.stub(admin, 'database').get(() => {
return () => {
return {ref: refStub};
};
});
当我运行测试时,我收到以下错误TypeError: Cannot read property 'TIMESTAMP' of undefined。如何修复此错误或存根对admin.database.ServerValue.TIMESTAMP 的调用?谢谢。
【问题讨论】:
-
我不明白你为什么要模拟
set()时有sinon.stub(admin, 'database').get
标签: javascript unit-testing firebase firebase-realtime-database sinon