Вам нужно использовать FindClassHInstance()
, указав тип класса вашего компонента, вместо использования глобальной переменной HInstance
или GetModuleHandle()
. Таким образом, вы получаете правильный дескриптор модуля независимо от того, ставится ли пакет статически связан или динамически связан с основным исполняемым файлом.
Конструктор объекта всегда будет выполняться первым. Если у вас там нет асинхронного кода.
Как вы упомянули в комментариях, это была проблема в вашем случае.
Чтобы дождаться завершения асинхронной проверки в вашем тесте, вы должны использовать fakeAsync и , отметьте
it('name of test', fakeAsync(inject([ Service], (hcs: Service) => {
const pipe = new MyPipe(hcs);
tick();
const expectedResult = ...
//Here the constructor of the hcs-service has to be completet, otherwise the Pipe fails
const result = pipe.transform(...);
expect(result).toEqual(expectedResult);
})));