66 lines
2.1 KiB
JavaScript
66 lines
2.1 KiB
JavaScript
import { mount } from '@vue/test-utils';
|
|
import recalModal from '@/layouts/coverage-statement/recal-modal/recal-modal';
|
|
|
|
const mockCmsContent = {
|
|
HeaderText: 'Sample header text here.',
|
|
SubheaderText: 'Sample subheader text here.',
|
|
Image: 'https://www.sampleImage.sample',
|
|
BodyText: 'Sample body text here.',
|
|
FooterText: 'Sample footer text here.'
|
|
};
|
|
|
|
const mockMixin = {
|
|
methods: {
|
|
getCmsContent: jest.fn((widgetName, cmsFieldName) => mockCmsContent[cmsFieldName])
|
|
}
|
|
};
|
|
|
|
describe('modal.vue', () => {
|
|
it('Should display header text when HeaderText is defined in the CMS', async () => {
|
|
// Act
|
|
const wrapper = mount(recalModal, {
|
|
mixins: [mockMixin],
|
|
props: {
|
|
cmsWidgetName: 'test'
|
|
},
|
|
attachTo: document.body
|
|
});
|
|
expect(wrapper.html()).toEqual(expect.stringContaining(mockCmsContent.HeaderText));
|
|
});
|
|
|
|
it('Should display subheader text when SubheaderText is defined in the CMS', async () => {
|
|
// Act
|
|
const wrapper = mount(recalModal, {
|
|
mixins: [mockMixin],
|
|
props: {
|
|
cmsWidgetName: 'test'
|
|
},
|
|
attachTo: document.body
|
|
});
|
|
expect(wrapper.html()).toEqual(expect.stringContaining(mockCmsContent.SubheaderText));
|
|
});
|
|
|
|
it('Should insert image url when Image is defined in the CMS', async () => {
|
|
// Act
|
|
const wrapper = mount(recalModal, {
|
|
mixins: [mockMixin],
|
|
props: {
|
|
cmsWidgetName: 'test'
|
|
},
|
|
attachTo: document.body
|
|
});
|
|
expect(wrapper.html()).toEqual(expect.stringContaining(mockCmsContent.Image));
|
|
});
|
|
|
|
it('Should display body text when BodyText is defined in the CMS', async () => {
|
|
// Act
|
|
const wrapper = mount(recalModal, {
|
|
mixins: [mockMixin],
|
|
props: {
|
|
cmsWidgetName: 'test'
|
|
},
|
|
attachTo: document.body
|
|
});
|
|
expect(wrapper.html()).toEqual(expect.stringContaining(mockCmsContent.BodyText));
|
|
});
|
|
});
|