Общий/Общий Тип, Вызывающий Угловую Круговую Зависимость

#angular #typescript #jasmine

Вопрос:

У меня есть угловая библиотека с 2 сервисами. Обе службы импортируют интерфейсы. В приложении/сайте, который импортирует библиотеку, я получаю ошибку циклической зависимости.

Структура файла myLib:

 /config
    /appConfig.ts
    /storage.ts  
    /model
        /config.ts
    
 

конфигурация.ts:

 export interface IConfig {
    product?: IProductConfig,
    authd?: boolean
}

export interface IProductConfig {
    id?: string,
    productCode?: string,
    inStock: boolean
}


export interface IStorageConfig {
    id?: string,
    name:: string
}
 

AppConfig.ts

 import { IConfig, IProductConfig, IStorageConfig } from './model/config';
import { StorageService } from './storage';

@Injectable
export class ConfigService {

    constructor(public storage: StorageService, public anotherService: AnotherService)

}
 

хранилище.ts

 import { IConfig, IProductConfig, IStorageConfig } from './model/config';

@Injectable
export class StorageService {

    constructor()

}
 

На своем сайте я импортирую ConfigService из своей библиотеки. Приложение отлично работает в браузере, однако модульный тест не работает с:

Ошибка:

 Failed: Uncaught (in promise): Error: NG0200 Circular Dep detected for AppService.
 

Комментарии:

1. можете ли вы поделиться кодом модульного теста ? как вы инициализируете модуль и вводите эти зависимости ?