61 lines
1.8 KiB
JavaScript
61 lines
1.8 KiB
JavaScript
import { shallowMount } from "@vue/test-utils";
|
|
import Modal from "./modal";
|
|
|
|
|
|
describe("modal.vue", () => {
|
|
it("Should display header text when HeaderText is defined in the CMS", async () => {
|
|
// Act
|
|
const wrapper = shallowMount(Modal, {
|
|
mixins: [mockMixin]
|
|
});
|
|
expect(wrapper.html()).toEqual(expect.stringContaining(mockCmsContent['HeaderText']));
|
|
});
|
|
|
|
it("Should display subheader text when SubheaderText is defined in the CMS", async () => {
|
|
// Act
|
|
const wrapper = shallowMount(Modal, {
|
|
mixins: [mockMixin]
|
|
});
|
|
expect(wrapper.html()).toEqual(expect.stringContaining(mockCmsContent['SubheaderText']));
|
|
});
|
|
|
|
it("Should insert image url when Image is defined in the CMS", async () => {
|
|
// Act
|
|
const wrapper = shallowMount(Modal, {
|
|
mixins: [mockMixin]
|
|
});
|
|
expect(wrapper.html()).toEqual(expect.stringContaining(mockCmsContent['Image']));
|
|
});
|
|
|
|
it("Should display body text when BodyText is defined in the CMS", async () => {
|
|
// Act
|
|
const wrapper = shallowMount(Modal, {
|
|
mixins: [mockMixin]
|
|
});
|
|
expect(wrapper.html()).toEqual(expect.stringContaining(mockCmsContent['BodyText']));
|
|
});
|
|
|
|
it("Should display footer text when FooterText is defined in the CMS", async () => {
|
|
// Act
|
|
const wrapper = shallowMount(Modal, {
|
|
mixins: [mockMixin]
|
|
});
|
|
expect(wrapper.html()).toEqual(expect.stringContaining(mockCmsContent['FooterText']));
|
|
});
|
|
});
|
|
|
|
const mockMixin = {
|
|
methods: {
|
|
getCmsContent: jest.fn((widgetName, cmsFieldName) => {
|
|
return mockCmsContent[cmsFieldName];
|
|
})
|
|
}
|
|
}
|
|
|
|
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.",
|
|
}
|