我已经阅读并关注了用于单元测试的 EmberJS 服务注入(Ember QUnit),但我仍然无法弄清楚问题出在哪里。
我想测试我的身份验证是否按预期工作。我已经为 ember-simple-auth 编写了身份验证器,并且会话被注入到路由中。代码本身没有任何问题。
export default Ember.Route.extend({
authManager: Ember.inject.service('session'),
...
(in actions):
this.get('authManager').invalidate()
现在,我想创建一个测试来测试我的身份验证是否按预期工作。所以我希望直接使用 authManager 。
moduleFor('route:index', 'Unit | Route | xyz', {
needs: ['service:session']
});
test('2', function(assert) {
let route = this.subject();
let s = route.get('authManager');
当我打印's'的内容时,我得到''。如果我将其更改为其他内容,则响应未定义,正如预期的那样。问题是当我想获取属性“isAuthenticated”或运行“invalidate()”时。在这些情况下,我得到了“未定义”。我究竟做错了什么?