Испытание углового сердечника модуля с защитой от повторного ввоза - PullRequest
0 голосов
/ 03 сентября 2018

Я не могу написать тест для основного модуля, для которого в конструкторе определена защита. Мой тест не пройден с требованием передать параметры конструктору. Если я передаю ему ссылку на какой-либо модуль (AppModule), он считается реимпортом.

Я просто хочу знать, как можно протестировать модуль со следующим фрагментом в конструкторе.

в моем core.module.ts У меня есть это -

 export class CoreModule {

  constructor(@Optional() @SkipSelf() parentModule: CoreModule) {
    if (parentModule) {
      throw new Error(
        'CoreModule is already loaded. Import it in the AppModule only');
    }
  }

  static forRoot(): ModuleWithProviders {
    return {
      ngModule: CoreModule,
      providers: [
        { provide: HTTP_INTERCEPTORS, useClass: JwtInterceptorService, multi: true },
        { provide: HTTP_INTERCEPTORS, useClass: ErrorInterceptorService, multi: true }
      ]
    };
  }

}

1 Ответ

0 голосов
/ 04 сентября 2018

Привет, вы пробовали синтаксис TypeScript для необязательных параметров?

constructor(parentModule?: CoreModule) {
    if (parentModule) {
      throw new Error(
        'CoreModule is already loaded. Import it in the AppModule only');
    }
  }

надеюсь, это поможет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...