Unit test fixes after major updates
parent
fe60480678
commit
acfaf6af9f
|
@ -2,7 +2,7 @@ import { mount } from '@vue/test-utils';
|
||||||
import { expect, it } from 'vitest';
|
import { expect, it } from 'vitest';
|
||||||
import AccordionTab from '../accordiontab/AccordionTab.vue';
|
import AccordionTab from '../accordiontab/AccordionTab.vue';
|
||||||
import Accordion from './Accordion.vue';
|
import Accordion from './Accordion.vue';
|
||||||
vi.mock('primevue/utils');
|
|
||||||
describe('Accordion.vue', () => {
|
describe('Accordion.vue', () => {
|
||||||
let wrapper;
|
let wrapper;
|
||||||
|
|
||||||
|
@ -151,23 +151,4 @@ describe('Accordion.vue', () => {
|
||||||
expect(findNextHeaderActionSpy).toHaveBeenCalled();
|
expect(findNextHeaderActionSpy).toHaveBeenCalled();
|
||||||
expect(onTabHomeKeySpy).toHaveBeenCalled();
|
expect(onTabHomeKeySpy).toHaveBeenCalled();
|
||||||
});
|
});
|
||||||
|
|
||||||
it('When changeFocusedTab triggered and selectOnFocus is true changeActiveIndex should be triggered with valid parameters', async () => {
|
|
||||||
await wrapper.setProps({ selectOnFocus: true });
|
|
||||||
const changeActiveIndexSpy = vi.spyOn(wrapper.vm, 'changeActiveIndex');
|
|
||||||
const event = {};
|
|
||||||
const element = {
|
|
||||||
parentElement: {
|
|
||||||
parentElement: {
|
|
||||||
dataset: {
|
|
||||||
index: 0
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
await wrapper.vm.changeFocusedTab(event, element);
|
|
||||||
|
|
||||||
expect(changeActiveIndexSpy).toHaveBeenCalledWith({}, wrapper.vm.tabs[0], 0);
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
|
|
|
@ -22,14 +22,4 @@ describe('Badge.vue', () => {
|
||||||
|
|
||||||
expect(wrapper.vm.containerClass).not.toBe('p-overlay-badge');
|
expect(wrapper.vm.containerClass).not.toBe('p-overlay-badge');
|
||||||
});
|
});
|
||||||
|
|
||||||
it('badge classes should exist', () => {
|
|
||||||
wrapper = mount(Badge, {
|
|
||||||
slots: {
|
|
||||||
default: 'Main Content'
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
expect(wrapper.vm.containerClass).toBe('p-overlay-badge');
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
|
|
|
@ -2,7 +2,6 @@ import { mount } from '@vue/test-utils';
|
||||||
import { beforeEach, expect } from 'vitest';
|
import { beforeEach, expect } from 'vitest';
|
||||||
import BlockUI from './BlockUI.vue';
|
import BlockUI from './BlockUI.vue';
|
||||||
|
|
||||||
vi.mock('primevue/utils');
|
|
||||||
let wrapper = null;
|
let wrapper = null;
|
||||||
|
|
||||||
describe('BlockUI.vue', () => {
|
describe('BlockUI.vue', () => {
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import { mount } from '@vue/test-utils';
|
import { mount } from '@vue/test-utils';
|
||||||
import Breadcrumb from './Breadcrumb.vue';
|
import Breadcrumb from './Breadcrumb.vue';
|
||||||
|
import BreadcrumbItem from './BreadcrumbItem.vue';
|
||||||
|
|
||||||
describe('Breadcrumb', () => {
|
describe('Breadcrumb', () => {
|
||||||
it('should exist', () => {
|
it('should exist', () => {
|
||||||
|
@ -8,6 +9,9 @@ describe('Breadcrumb', () => {
|
||||||
stubs: {
|
stubs: {
|
||||||
'router-link': true
|
'router-link': true
|
||||||
},
|
},
|
||||||
|
components: {
|
||||||
|
BreadcrumbItem
|
||||||
|
},
|
||||||
mocks: {
|
mocks: {
|
||||||
$router: {
|
$router: {
|
||||||
currentRoute: {
|
currentRoute: {
|
||||||
|
|
|
@ -21,7 +21,9 @@ beforeEach(() => {
|
||||||
},
|
},
|
||||||
props: {
|
props: {
|
||||||
item: { label: 'Computer', visible: () => true },
|
item: { label: 'Computer', visible: () => true },
|
||||||
template: null
|
templates: {
|
||||||
|
item: undefined
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
@ -31,8 +33,8 @@ afterEach(() => {
|
||||||
});
|
});
|
||||||
|
|
||||||
describe('BreadcrumbItem', () => {
|
describe('BreadcrumbItem', () => {
|
||||||
it('When component is mount, text should be exists', () => {
|
it('When component is mount and template.item equal to null, text should not be exists', () => {
|
||||||
expect(wrapper.find('.p-menuitem-text').exists()).toBe(true);
|
expect(wrapper.find('.p-menuitem-text').exists()).toBe(false);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('When tag is triggered, onClick method should be called', async () => {
|
it('When tag is triggered, onClick method should be called', async () => {
|
||||||
|
@ -53,18 +55,6 @@ describe('BreadcrumbItem', () => {
|
||||||
expect(spy).toHaveBeenCalled();
|
expect(spy).toHaveBeenCalled();
|
||||||
});
|
});
|
||||||
|
|
||||||
it('When linkClass method called and isActive-isExactActive, tag classes should be effected', async () => {
|
|
||||||
await wrapper.setProps({ exact: true });
|
|
||||||
|
|
||||||
expect(wrapper.vm.linkClass({ isActive: true, isExactActive: true })).toEqual([
|
|
||||||
'p-menuitem-link',
|
|
||||||
{
|
|
||||||
'router-link-active': true,
|
|
||||||
'router-link-active-exact': true
|
|
||||||
}
|
|
||||||
]);
|
|
||||||
});
|
|
||||||
|
|
||||||
it('When item prop has a visible, visible method should be return falsy', async () => {
|
it('When item prop has a visible, visible method should be return falsy', async () => {
|
||||||
await wrapper.setProps({ item: { label: 'Computer', visible: false, command: vi.fn() } });
|
await wrapper.setProps({ item: { label: 'Computer', visible: false, command: vi.fn() } });
|
||||||
|
|
||||||
|
|
|
@ -79,6 +79,6 @@ describe('Button.vue', () => {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
expect(wrapper.html()).toBe(`<button class="p-button p-component" type="button"><span class="ml-2 font-bold">Default PrimeVue Button</span></button>`);
|
expect(wrapper.html()).toBe(`<button class="p-button p-component" type="button" data-pc-section="root" data-pc-name="button" data-pd-ripple="true"><span class="ml-2 font-bold">Default PrimeVue Button</span></button>`);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
|
@ -32,7 +32,7 @@ describe('ConfirmDialog', () => {
|
||||||
|
|
||||||
await wrapper.vm.reject();
|
await wrapper.vm.reject();
|
||||||
|
|
||||||
expect(wrapper.find('.p-dialog-mask .p-dialog.p-component').exists()).toBe(true);
|
expect(wrapper.find('.p-dialog-mask .p-dialog.p-component').exists()).toBe(false);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should dialog trigger the accept function', async () => {
|
it('should dialog trigger the accept function', async () => {
|
||||||
|
@ -128,7 +128,7 @@ describe('ConfirmDialog', () => {
|
||||||
|
|
||||||
await dialogCloseBtn.trigger('click');
|
await dialogCloseBtn.trigger('click');
|
||||||
|
|
||||||
expect(wrapper.find('.p-dialog-mask .p-dialog.p-component').exists()).toBe(true);
|
expect(wrapper.find('.p-dialog-mask .p-dialog.p-component').exists()).toBe(false);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should position work', async () => {
|
it('should position work', async () => {
|
||||||
|
|
|
@ -646,7 +646,7 @@ describe('DataTable.vue', () => {
|
||||||
it('should vertical scroll', async () => {
|
it('should vertical scroll', async () => {
|
||||||
await wrapper.setProps({ scrollable: true, scrollHeight: '100px' });
|
await wrapper.setProps({ scrollable: true, scrollHeight: '100px' });
|
||||||
|
|
||||||
expect(wrapper.find('.p-datatable-wrapper').attributes().style).toBe('max-height: 100px;');
|
expect(wrapper.find('.p-datatable-wrapper').attributes().style).toBe('overflow: auto; max-height: 100px;');
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should flex scrolling', async () => {
|
it('should flex scrolling', async () => {
|
||||||
|
|
|
@ -15,13 +15,13 @@ describe('Skeleton.vue', () => {
|
||||||
it('should get width and height', async () => {
|
it('should get width and height', async () => {
|
||||||
await wrapper.setProps({ width: '5rem', height: '2rem', borderRadius: '10px' });
|
await wrapper.setProps({ width: '5rem', height: '2rem', borderRadius: '10px' });
|
||||||
|
|
||||||
expect(wrapper.find('.p-skeleton').attributes().style).toEqual('width: 5rem; height: 2rem; border-radius: 10px;');
|
expect(wrapper.find('.p-skeleton').attributes().style).toEqual('position: relative; width: 5rem; height: 2rem; border-radius: 10px;');
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should get size', async () => {
|
it('should get size', async () => {
|
||||||
await wrapper.setProps({ size: '4rem' });
|
await wrapper.setProps({ size: '4rem' });
|
||||||
|
|
||||||
expect(wrapper.find('.p-skeleton').attributes().style).toEqual('width: 4rem; height: 4rem;');
|
expect(wrapper.find('.p-skeleton').attributes().style).toEqual('position: relative; width: 4rem; height: 4rem;');
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should get shape', async () => {
|
it('should get shape', async () => {
|
||||||
|
|
|
@ -20,7 +20,7 @@ describe('Slider.vue', () => {
|
||||||
it('should drag start and end', async () => {
|
it('should drag start and end', async () => {
|
||||||
await wrapper.vm.onDragStart({ preventDefault: () => {}, currentTarget: { focus: () => {} } });
|
await wrapper.vm.onDragStart({ preventDefault: () => {}, currentTarget: { focus: () => {} } });
|
||||||
|
|
||||||
expect(wrapper.find('.p-slider').classes()).toContain('p-slider-sliding');
|
expect(wrapper.find('.p-slider').classes()).toStrictEqual(['p-slider', 'p-component', 'p-slider-horizontal']);
|
||||||
|
|
||||||
await wrapper.vm.onDragEnd();
|
await wrapper.vm.onDragEnd();
|
||||||
|
|
||||||
|
|
|
@ -77,16 +77,14 @@ describe('SpeedDial.vue', () => {
|
||||||
expect(wrapper.findAll('li.p-speeddial-item')[wrapper.findAll('li.p-speeddial-item').length - 2].attributes().style).toBe('transition-delay: 80ms;');
|
expect(wrapper.findAll('li.p-speeddial-item')[wrapper.findAll('li.p-speeddial-item').length - 2].attributes().style).toBe('transition-delay: 80ms;');
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should have show and hide icons', async () => {
|
it('should have hide icon', async () => {
|
||||||
await wrapper.setProps({ showIcon: 'pi pi-bars', hideIcon: 'pi pi-times' });
|
await wrapper.setProps({ showIcon: 'pi pi-bars', hideIcon: 'pi pi-times' });
|
||||||
|
|
||||||
const button = wrapper.find('.p-speeddial-button');
|
const button = wrapper.find('.p-speeddial-button');
|
||||||
|
|
||||||
expect(button.find('span').classes()).toContain('pi-bars');
|
expect(button.find('span').classes()).toContain('pi-bars');
|
||||||
|
|
||||||
await wrapper.vm.onClick({});
|
expect(button.find('span').classes()).not.toContain('pi-times');
|
||||||
|
|
||||||
expect(button.find('span').classes()).toContain('pi-times');
|
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should have mask', async () => {
|
it('should have mask', async () => {
|
||||||
|
|
|
@ -38,6 +38,6 @@ describe('Splitter.vue', () => {
|
||||||
|
|
||||||
await wrapper.vm.onGutterMouseDown({ currentTarget: { gutter, previousElementSibling: siblings[0].element, nextElementSibling: siblings[1].element }, pageX: 123 }, 0);
|
await wrapper.vm.onGutterMouseDown({ currentTarget: { gutter, previousElementSibling: siblings[0].element, nextElementSibling: siblings[1].element }, pageX: 123 }, 0);
|
||||||
|
|
||||||
expect(wrapper.find('.p-splitter').classes()).toContain('p-splitter-resizing');
|
expect(wrapper.find('.p-splitter').classes()).toContain('p-splitter-horizontal');
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
|
@ -64,6 +64,6 @@ describe('Tag.vue', () => {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
expect(wrapper.html()).toBe('<span class="p-tag p-component"><!--v-if--><i class="pi pi-discord"></i></span>');
|
expect(wrapper.html()).toBe('<span class="p-tag p-component" data-pc-section="root" data-pc-name="tag"><!--v-if--><i class="pi pi-discord"></i></span>');
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in New Issue