gpt4 book ai didi

ember.js - Ember 与 ember-data 模型的集成测试

转载 作者:行者123 更新时间:2023-12-02 19:30:29 31 4
gpt4 key购买 nike

如何测试我的组件,将 ember-data 模型作为 props 传递给它?

例如:

{{#queue/review/moderatable-text model=activity property="info_name" handleModeration="handleModeration"}}
{{pro-form-textfield value=activity.info_name}}
{{/queue/review/moderatable-text}}

其中 Activity 是模型实例。

如何设置集成测试以传递事件并在组件可以保存模型的位置进行测试?

我试图把它当作纯粹的 ember 对象来 stub :

test('it sets approved', function(assert) {

// Set any properties with this.set('myProperty', 'value');
// Handle any actions with this.on('myAction', function(val) { ... });" + EOL + EOL +
this.set('property', 'info_title');
this.set('model', Ember.Object.create({counterpart: Ember.Object.create()}))

// Template block usage:" + EOL +
this.render(hbs`
{{#queue/review/moderatable-text property=property}}
{{pro-form-textfield value=value}}
{{/queue/review/moderatable-text}}
`);

this.$('.approve-button').click();

assert.ok(this.get('approved'));
});

但是我必须创建自己的 save() 方法和其他方法。

想法?

最佳答案

but then I'd have to create my own save() methods and others.

很好,你可以采用这种方法。在我看来,你可以创建自己的方法是有好处的。您可以在其中放置断言。因此,例如,如果您希望组件调用 modelsave 方法,您可以在 save 方法主体中放置断言:

Ember.Object.create({
counterpart: Ember.Object.create(),
save() {
assert.ok('save method called');
}
});

这使您可以更好地控制测试中的测试行为。

关于ember.js - Ember 与 ember-data 模型的集成测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33789461/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com