J'ai un mixin simple :
export const mixin = superclass => class extends superclass {
firstUpdated() {
super.firstUpdated();
this.dispatchEvent(new CustomEvent('my-event', {
bubbles: true,
composed: true,
detail: {
myEventTriggered: true,
},
}));
}
};
Je veux tester si my-event
est déclenché. Voici mon test :
it('dispatches the custom event', async () => {
const tag = class extends mixin(LitElement) {};
const el = await fixture(`<${tag}>`);
setTimeout(() => el.firstUpdated());
const { detail } = await oneEvent(el, 'my-event');
expect(detail.myEventTriggered).to.be.true;
});
Cela fonctionne comme prévu mais je ne suis pas sûr de la ligne setTimeout(() => el.firstUpdated());
. Ne devrait-il pas appeler firstUpdated
après await fixture
? Je suis juste en train de suivre le guide de test d'open-wc.