Есть ли способ внедрить служебные зависимости в тесте angular 8 с реальными зависимостями (не поддельными или поддельными)? - PullRequest
0 голосов
/ 15 октября 2019

У меня есть служба, которую я хотел проверить.

MyService.ts
...
@Injectable({
    providedIn: "root"
})
export class MyService {
    constructor(
        private readonly _apisService: ApisService,
        private readonly _urlService: UrlService
    ) {}
...

Эта служба имеет 2 зависимости. ApiService имеет 3 зависимости, и этот список можно продолжить. каждая из 3 зависимостей имеет свои зависимости, и этот список можно продолжить.

MyService.spec.ts

...
beforeEach(async(() => {
        TestBed.configureTestingModule({
            providers: [MyService, UrlService, ApisService]
        }).compileComponents();
    }));
...

, но я получаю сообщение об ошибке

StaticInjectorError(DynamicTestModule)[ApisService -> HttpClient]

Я просто хочу протестировать этот сервис с реальными данными (а не с поддельными)или поддельные данные), и трудно смоделировать все зависимости.

Я хочу проверить MyService с реальным сервисом без насмешек или фальсификации со всеми его зависимостями и внедритьэти зависимости в моем тесте, не имея дело с каждым?

1 Ответ

0 голосов
/ 15 октября 2019

добавить HttpClientTestingModule для импорта

TestBed.configureTestingModule({
   imports: [
      HttpClientTestingModule
   ],
   providers: [TournamentsService, UrlService, ApisService]
}).compileComponents();
...