-
Notifications
You must be signed in to change notification settings - Fork 476
Open
Description
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):
import mitt from 'mitt'
export const emitirGlobal = mitt()In my componente A:
import { emitirGlobal } from "@/mitt"
{ ... }
emitirGlobal.emit("recarregarAtividades")In my componente B:
import { emitirGlobal } from "@/mitt"
{...}
emitirGlobal.on("recarregarAtividades", async (): Promise<void> => {
await recarregarAtividades()
})My archive jest-setup.ts:
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:
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(),
}Metadata
Metadata
Assignees
Labels
No labels