import { mount } from '@vue/test-utils'; import Message from './Message.vue'; describe('Message.vue', () => { let wrapper; beforeEach(() => { wrapper = mount(Message, { props: { severity: 'error' }, slots: { default: 'Error Message Content' } }); }); it('should exist', () => { expect(wrapper.find('.p-message.p-component').exists()).toBe(true); expect(wrapper.find('.p-message.p-component').classes()).toContain('p-message-error'); expect(wrapper.find('.p-message-text').text()).toContain('Error Message Content'); }); it('should close the message', async () => { await wrapper.vm.close({}); expect(wrapper.vm.visible).toBe(false); expect(wrapper.emitted().close[0]).toEqual([{}]); }); it('should have custom close icon if provided', async () => { await wrapper.setProps({ closeIcon: 'pi pi-discord' }); const icon = wrapper.find('.p-message-close-icon'); expect(icon.classes()).toContain('pi-discord'); }); });