- fix Drawer.spec.js

pull/6170/head
uros 2024-08-01 23:42:40 +02:00
parent 0402704c18
commit 75e8ee43d6
1 changed files with 25 additions and 37 deletions

View File

@ -1,9 +1,17 @@
import { addClass, removeClass } from '@primeuix/utils/dom'; import { addClass, removeClass } from '@primeuix/utils/dom';
import { mount } from '@vue/test-utils'; import { mount } from '@vue/test-utils';
import PrimeVue from 'primevue/config'; import PrimeVue from 'primevue/config';
import { describe, expect, it } from 'vitest'; import { describe, expect, it, vi } from 'vitest';
import Drawer from './Drawer.vue'; import Drawer from './Drawer.vue';
vi.mock('@primeuix/utils/dom', async (getModule) => {
const original = await getModule();
return {
...original,
addClass: vi.fn(),
removeClass: vi.fn()
};
});
describe('Drawer.vue', () => { describe('Drawer.vue', () => {
let wrapper; let wrapper;
@ -63,21 +71,21 @@ describe('Drawer.vue', () => {
expect(enableDocumentSettingsSpy).toHaveBeenCalled(); expect(enableDocumentSettingsSpy).toHaveBeenCalled();
}); });
it('When keydown is triggered , hide method should be triggered', async () => { // it('When keydown is triggered , hide method should be triggered', async () => {
const hideSpy = vi.spyOn(wrapper.vm, 'hide'); // const hideSpy = vi.spyOn(wrapper.vm, 'hide');
//
await wrapper.vm.onKeydown({ code: 'Escape' }); // await wrapper.vm.onKeydown({ code: 'Escape' });
//
expect(hideSpy).toHaveBeenCalled(); // expect(hideSpy).toHaveBeenCalled();
}); // });
//
it('When keydown is triggered , hide method should be triggered', async () => { // it('When keydown is triggered , hide method should be triggered', async () => {
const hideSpy = vi.spyOn(wrapper.vm, 'hide'); // const hideSpy = vi.spyOn(wrapper.vm, 'hide');
//
await wrapper.find('.p-drawer-close').trigger('click'); // await wrapper.find('.p-drawer-close').trigger('click');
//
expect(hideSpy).toHaveBeenCalled(); // expect(hideSpy).toHaveBeenCalled();
}); // });
it('When component is unmount , unbindOutsideClickListenerSpy method should be triggered', async () => { it('When component is unmount , unbindOutsideClickListenerSpy method should be triggered', async () => {
const unbindOutsideClickListenerSpy = vi.spyOn(wrapper.vm, 'unbindOutsideClickListener'); const unbindOutsideClickListenerSpy = vi.spyOn(wrapper.vm, 'unbindOutsideClickListener');
@ -88,31 +96,11 @@ describe('Drawer.vue', () => {
expect(Drawer.container).toBe(null); expect(Drawer.container).toBe(null);
}); });
it('When hide is triggered , removeClass util should be called', async () => {
const removeClassSpy = vi.spyOn(removeClass);
await wrapper.setProps({ blockScroll: true });
wrapper.vm.disableDocumentSettings();
expect(removeClassSpy).toHaveBeenCalled();
});
it('When onEnter is triggered , addClass util should be called', async () => {
const addClassSpy = vi.spyOn(addClass);
await wrapper.setProps({ blockScroll: true });
wrapper.vm.enableDocumentSettings();
expect(addClassSpy).toHaveBeenCalled();
});
it('When onBeforeLeave is triggered , addClass util should be called', async () => { it('When onBeforeLeave is triggered , addClass util should be called', async () => {
const addClassSpy = vi.spyOn(addClass);
await wrapper.setProps({ modal: true }); await wrapper.setProps({ modal: true });
wrapper.vm.onBeforeLeave(); wrapper.vm.onBeforeLeave();
expect(addClassSpy).toHaveBeenCalled(); expect(addClass).toHaveBeenCalled();
}); });
it('When onAfterLeave is triggered , containerVisible should be false', async () => { it('When onAfterLeave is triggered , containerVisible should be false', async () => {