use*_*644 3 mocha.js sinon firebase google-cloud-functions firebase-storage
我在index.js中有以下函数代码:
var admin = require('firebase-admin');
admin.initializeApp();
admin.storage();
Run Code Online (Sandbox Code Playgroud)
以及以下测试代码:
var assert = require('assert');
var sinon = require('sinon');
describe('Event Sourcing', function() {
var myFunctions, adminInitStub, adminStorageStub,admin;
before(() => {
admin = require('firebase-admin');
adminStorageStub = sinon.stub(admin, 'storage');
adminInitStub = sinon.stub(admin, 'initializeApp');
myFunctions = require('../index');
});
after(() => {
// Restoring our stubs to the original methods.
adminInitStub.restore();
adminStorageStub.restore();
});
describe('CREATED', function() {
it('should return -1 when the value is not present', function() {
assert.equal(-1, [1,5,3].indexOf(4));
});
});
});
Run Code Online (Sandbox Code Playgroud)
由于某些奇怪的原因,我不断收到以下错误,Error: The default Firebase app does not exist. Make sure you call initializeApp() before using any of the Firebase services.
但我显然已经将其存根了。为什么存根只对initializeApp()有效,而对storage()无效。
谢谢!
admin.storage()
实际上是吸气剂,因此需要用这种方法
adminStorageStub = sinon.stub(admin, 'storage').get(() => {
return () => {
return {bucket: (() => {})};
}
});
Run Code Online (Sandbox Code Playgroud)
有关sinon存根的更多信息,请参见http://sinonjs.org/releases/v2.0.0/stubs/
归档时间: |
|
查看次数: |
322 次 |
最近记录: |