Одна из зависимостей службы внедряет интерфейс в конструктор. Интересно, как я могу зависимость вводит интерфейс в модульный тест?
Экспортируемый интерфейс:
export interface MobilePlatform {
onClick(): void;
onPageFinished(router: Router): void;
onPageStart(): void;
sendClose(): void;
tts(text: String): void;
}
Сервис внедряет интерфейс в конструктор
constructor(private platform: MobilePlatform, private router: Router) {}
Как я могу ввести этот интерфейс в тесте углового модуля?
describe('MobileActions', () => {
let actions: MobileActions;
let platform: MobilePlatform;
beforeEach(() => {
TestBed.configureTestingModule({
providers: [
MobileActions,
{ provide: MobilePlatform, useClass: MockMobilePlatform },
{ provide: Router, useClass: MockRouter }
]
});
actions = TestBed.get(MobileActions);
platform = TestBed.get(MockMobilePlatform);
});
it('should create actions', () => {
expect(actions).toBeTruthy();
expect(platform).toBeTruthy();
});
});
Кажется, этот тип инъекции не удался.