Итак, я создал модульные тесты для своих компонентов, но хочу, чтобы некоторые из моих отдельных служб были изолированы. Однако, когда я пытаюсь их внедрить (тестируемый метод обслуживания не является асинхронным).
describe('SearchService', () => {
beforeEach(() => {
TestBed.configureTestingModule({
providers: [
SearchService
]
});
});
it("should build Url String", () => {
inject([SearchService], (searchService: SearchService) => {
spyOn(searchService, 'buildURL');
console.log("should be logging like a boss");
searchService.buildURL("test", "coursename", 2);
expect(searchService.buildURL).toHaveBeenCalled();
expect(searchService.buildURL("test", "coursename", 2)).toBe(['1']);
expect(searchService.buildURL("test", "coursename", 2)).toBeFalsy();
});
});
});
Inject никогда не запускает обратный вызов! test распознает его, но передает без ошибок.
оператор console.log внутри никогда не запускается, и тесты, предназначенные для отказа, проходят, поэтому я предполагаю, что инъекция не запускается.