Hi, I'm trying to create a mock of mitt for the unit tests of my components in Vue 3, however, I'm not succeeding, can you help? mitt instance file (in root): ```js import mitt from 'mitt' export const emitirGlobal = mitt() ``` In my componente A: ```js import { emitirGlobal } from "@/mitt" { ... } emitirGlobal.emit("recarregarAtividades") ``` In my componente B: ```js import { emitirGlobal } from "@/mitt" {...} emitirGlobal.on("recarregarAtividades", async (): Promise<void> => { await recarregarAtividades() }) ``` My archive ```jest-setup.ts```: ```js import '@testing-library/jest-dom' import { config } from '@vue/test-utils' import i18n from '@/i18n' config.global.plugins = [i18n] jest.mock('mitt', () => { const emitirGlobal = { on: jest.fn(), emit: jest.fn(), } return { emitirGlobal } }) global.console = { ...console, warn: jest.fn(), error: jest.fn(), } module.exports = { // Outras configurações do Jest... moduleNameMapper: { '^@/(.*)$': '<rootDir>/src/$1', }, setupFilesAfterEnv: ['<rootDir>/jest-setup.ts'], }; ``` --------------------------------------------- I've also tried adding "mitt" to Jest's "plugins", but it didn't work: ```js import '@testing-library/jest-dom' import { config } from '@vue/test-utils' import i18n from '@/i18n' import mitt from 'mitt' config.global.plugins = [i18n, mitt()] global.console = { ...console, warn: jest.fn(), error: jest.fn(), } ```
Activity
stoyan-scava commentedon Aug 28, 2024
https://youtu.be/GOYmouFrGrE?si=Qmz7oD3fUpYuQGuo&t=3272