这是Ember 2.2.0。我想用我的API服务器上的实时数据测试我的组件,使用ember-data
不模拟来自测试帮助程序的数据,手动AJAX请求或者使用ember-cli-mirage
之类的工具。目前,所有我在我的测试是这样的代码:如何在集成测试中访问一个ember数据存储实例?
import { moduleForComponent, test } from 'ember-qunit';
import hbs from 'htmlbars-inline-precompile';
moduleForComponent('checkbox-group', 'Integration | Component | checkbox group', {
integration: true
});
test('it renders', function(assert) {
this.render(hbs`{{checkbox-group}}`);
assert.equal(this.$().text().trim(), '');
});
我想要做的是这样的:
test('it renders', function(assert) {
const store = getStoreFromSomewhere();
const model = store.find('data').then(() => {
this.render(hbs`{{checkbox-group data=model}}`);
// Do testing on component with model from server
});
});
的问题是我不知道如何让存储实例,另外我不知道异步测试是如何实现的。
该文档不够有用:/。有人可以让我知道如何获得商店实例,如果这是不可能的,另一种方式来做ember-data
这个测试?
检查了我的旧测试,我知道“var store = this.store();” –
@kristjanreinhold没有工作:( – m0meni
也有导入“导入{测试,moduleForModel'从'ember-qunit';”>链接到完整测试=> http://dpaste.com/26GKG3G –