【发布时间】:2015-07-10 09:14:25
【问题描述】:
在进行集成测试时,我正在尝试使用内存连接器作为数据源。但它似乎总是连接到 mongodb-datasource。
我做过的一个主要 hack 是将每个模型的数据源更改为内存。但是必须有更好的方法来做到这一点。我正在从 gulp 任务运行我的测试。我的 roflmao 模型记忆破解:
var models = require('../server/model-config.json');
for (var key in models) {
var model = loopback.getModel(key);
loopback.configureModel(model, {dataSource: memory});
}
}
有没有办法更改应用程序的数据源?还是我必须更改每个单独模型的数据源..?
这样做的一种方法是在测试期间更改环境变量,但到目前为止,没有运气。我正在使用 gulp-task 预处理来执行此操作。
希望通过更改环境变量,它将使用 datasources.integrationtesting.js,其中我有内存作为数据源。
我的吞咽任务:
return gulp.src('integration-tests/*.js')
.pipe($.preprocess({context: {NODE_ENV: 'integrationtesting'}}))
.pipe($.mocha())
我正在使用:
- 环回测试
- 大口喝摩卡
欣赏任何 cmets.. :)
【问题讨论】:
-
解决这个问题的方法是能够在测试期间更改 NODE_ENV...
标签: node.js environment-variables loopbackjs strongloop