如何使用ember-data 1.0 beta从单元/集成测试中访问模型数据

bk1*_*425 4 integration-testing unit-testing ember.js ember-data

我已成功重构我的网站以处理新的Ember 1.0和Ember-data 1.0 beta.我正在尝试转换我的单元和集成测试,它与karma-runner一起运行.

我陷入了一个简单的测试,它验证数据是否在模型中正确存储. 这是一个样本测试,它适用于以前版本的ember-data(0.13?)和ember.js RC6.

虽然我知道在控制器或路由器功能中,这可能有助于获取模型数据:this.store.find('me');但是该语句是否适用于测试脚本?我无法让它发挥作用.有没有办法在测试时访问模型数据?

布赖恩

int*_*xel 6

对于测试,您始终可以通过执行以下操作在应用程序容器中查找商店

App.__container__.lookup('store:main');
Run Code Online (Sandbox Code Playgroud)

所以,这样的事情应该有效:

test('user is authenticated', function() {
  var store = App.__container__.lookup('store:main');
  var me;
  me = store.find('me');
  me.set('IsAuthenticated', true);
  ok(me.get('IsAuthenticated'), "user should be authenticated.");
});
Run Code Online (Sandbox Code Playgroud)

希望能帮助到你.