Я пытаюсь использовать firebase-сервер (https://github.com/urish/firebase-server) для модульного тестирования экспресс-приложения, использующего firebase. Однако я начинаю с того, что просто запускаю firebase-сервер на своей машине.
Я установил библиотеку локально: npm install --save-dev firebase-server
Затем, используя документацию для firebase-сервера, он говорит:
Если установлен локально, используйте следующий путь кзапустите сервер: ./node_modules/.bin/firebase-server
Следующая команда запустит сервер firebase на порту 5555:
firebase-server -p 5555
Из корня моего проекта я запускаю ./node_modules/.bin/firebase-server -p 5555
Результат:
/Users/user/Work/myproject/node_modules/firebase-server/dist/index.js:78
this.app.database().goOffline();
^
TypeError: this.app.database is not a function
at new FirebaseServer (/Users/user/Work/myproject/node_modules/firebase-server/dist/index.js:78:18)
at Object.<anonymous> (/Users/user/Work/myproject/node_modules/firebase-server/bin/firebase-server.js:85:17)
at Object.cli.main (/Users/user/Work/myproject/node_modules/cli/cli.js:957:14)
at Object.<anonymous> (/Users/user/Work/myproject/node_modules/firebase-server/bin/firebase-server.js:30:5)
at Module._compile (module.js:649:30)
at Object.Module._extensions..js (module.js:660:10)
at Module.load (module.js:561:32)
at tryModuleLoad (module.js:501:12)
at Function.Module._load (module.js:493:3)
at Function.Module.runMain (module.js:690:10)
Нужно ли мне делать какие-то другие настройки, чтобы заставить firebase-сервер работать через cli?
Дополнительная информация: я смог запустить сервер, если я установил firebase-сервер глобально, но все еще не смог запустить его из моего каталога репозитория в node_modules
package.json
{
"name": "endpoints",
"description": "my description",
"version": "0.0.1",
"private": true,
"license": "Apache-2.0",
"author": "JL",
"repository": {
"type": "git",
"url": "https://github.com/GoogleCloudPlatform/nodejs-docs-samples.git"
},
"engines": {
"node": ">=8.0.0"
},
"scripts": {
"start": "node app.js",
"test": "repo-tools test run --cmd ava -- -T 20s --verbose test/*.test.js"
},
"dependencies": {
"@google-cloud/logging": "^4.2.0",
"body-parser": "1.18.3",
"express": "4.16.4",
"firebase-admin": "~4.2.1",
"safe-buffer": "5.1.2",
"firebase": "5.8.3",
"@firebase/app": "0.3.8",
"@firebase/auth": "0.9.2",
"@firebase/database": "0.3.12",
"request-promise": "4.2.2"
},
"devDependencies": {
"@google-cloud/nodejs-repo-tools": "^3.0.0",
"ava": "0.25.0",
"firebase-server": "^1.0.1",
"husky": "^1.3.1",
"proxyquire": "2.1.0",
"sinon": "7.2.2",
"supertest": "3.3.0"
},
"husky": {
"hooks": {
"pre-push": "npm test"
}
}
}