Вы должны шпионить за window.open
в своем тесте.
const windowOpenSpy = spyOn(window, 'open');
, и вы можете проверить, был ли он вызван из вашего метода или вашими действиями:
expect(windowOpenSpy).toHaveBeenCalledWith(externalSiteUrl);
Обновление: Если вы хотите проверить, что open
был запущен, вы должны сделать:
spyOn(window, 'open').and.callThrough()
...
expect(window.open).toHaveBeenCalled()
.and.callThrough()
действительно важен.Если вы не используете его, то обычный open
будет заменен на dummy / mock , которая ничего не делает.