【发布时间】:2016-10-23 00:00:17
【问题描述】:
我有一个“消息”可注入,它表示可以获取用户消息的服务。此类依赖于使用用户凭据登录到后端的“数据库”类。
现在我想写一个2个用户同时登录的测试用例,自动测试用户1发来的消息是否直接到达用户2的收件箱。
因此,我需要一种方法来注入两个不同的“消息”实例和两个不同的、对应的“数据库”实例。
我尝试了以下方法:
beforeEachProviders(() => [
Messages, Database
]);
beforeEach(inject([Messages], (msg) => {
this.msg1 = msg;
}));
beforeEach(inject([Messages], (msg) => {
this.msg2 = msg;
}));
然而,事实证明,msg1 和 msg2 代表的是同一个“消息”实例:
it('testcase', () => {
// this.msg1 == this.msg2;
});
是否可以告诉注入器创建不同的“消息”实例及其依赖项?
【问题讨论】:
标签: javascript angularjs dependency-injection angular