Невозможно воспроизвести. Для меня событие resize
правильно запускается на window
:
(проверено на 3.3.1
, 3.5.0
, как без головы, так и во главе)
describe('test', () => {
it('test', () => {
let resizeEventFired = false;
cy.window().then(win => {
win.addEventListener('resize', () => {
resizeEventFired = true;
});
});
cy.viewport(123, 456);
cy.wrap().should(() => {
expect(resizeEventFired).to.eq(true);
});
});
});
Если оно все ещене работает для вас, или вы подписываетесь на какое-то нестандартное событие или элемент, тогда вы можете сделать это:
Cypress.Commands.overwrite('viewport', (origFn, ...args) => {
return origFn(...args).then(() => {
const window = cy.state('window');
window.dispatchEvent(new window.UIEvent('resize'));
});
});
(я запускаю resize
-совместимое событие на window
,но ты можешь делать все, что захочешь).