San*_*rea 6 javascript node.js strongloop loopbackjs
嗨,作为问题的标题,我想知道如何在启动测试之前检查环回启动脚本是否已完成.在示例项目中:
https://github.com/strongloop/loopback-example-relations
测试文件夹中有一个文件似乎可以完成这项工作,但遗憾的是它没有解决它.
start-server.js:
var app = require('../server/server');
module.exports = function(done) {
if (app.loaded) {
app.once('started', done);
app.start();
} else {
app.once('loaded', function() {
app.once('started', done);
app.start();
});
}
};
Run Code Online (Sandbox Code Playgroud)
此脚本在其余测试API中加载,如下所示:
before(function(done) {
require('./start-server');
done();
});
Run Code Online (Sandbox Code Playgroud)
但是从不调用该函数.这是使用该脚本的正确方法吗?
我结束了以下实现:
before(function (done) {
if (app.booting) {
console.log('Waiting for app boot...');
app.on('booted', done);
} else {
done();
}
});
Run Code Online (Sandbox Code Playgroud)
哪个有效,但我对这个启动服务器脚本感到困惑.
按照@stalin建议编辑我修改了before函数如下:
before(function(done) {
require('./start-server')(done);
});
Run Code Online (Sandbox Code Playgroud)
并且执行进入else分支但从done未被调用.
您永远不会将完成的函数传递给start-server脚本。尝试这样做:
before(function(done) {
var server = require('./start-server');
server(done);
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1124 次 |
| 最近记录: |