Implement unit tests

This commit is contained in:
Chloe Herd 2023-06-07 10:30:02 -04:00
parent 78a1df30c2
commit 33af471b03

View file

@ -1,3 +1,72 @@
import { shallowMount } from "@vue/test-utils";
import { getMountOptions } from "@/helpers/unit-test-helper.js";
import damageReview from "@/layouts/review/review-sections/damage-review/damage-review";
jest.mock("@/helpers/cms-content-helper", () => ({
fetchCmsContentForPage: () => Promise.resolve("content"),
}));
describe("Damage Review Block", () => {
test.todo("Add more tests as specific functionality is added.");
describe("Correctly assembles damage info into a display string", () => {
test("Basic Replace", async () => {
// Arrange
const { wrapper } = setupMocks({
propsData: {
damage: {
isRepair: false,
},
},
});
// Act
await wrapper.vm.$nextTick();
// Assert
expect(wrapper.vm.displayContent).toStrictEqual(["Windshield crack"]);
});
test("Basic Repair", async () => {
// Arrange
const { wrapper } = setupMocks({
propsData: {
damage: {
isRepair: true,
numberOfChips: 2,
},
},
});
// Act
await wrapper.vm.$nextTick();
// Assert
expect(wrapper.vm.displayContent).toStrictEqual(["Windshield repair - 2 chips"]);
});
test("Basic Repair - no s with 1 chip", async () => {
// Arrange
const { wrapper } = setupMocks({
propsData: {
damage: {
isRepair: true,
numberOfChips: 1,
},
},
});
// Act
await wrapper.vm.$nextTick();
// Assert
expect(wrapper.vm.displayContent).toStrictEqual(["Windshield repair - 1 chip"]);
});
});
});
function setupMocks(customMountOptions) {
const mountOptions = getMountOptions(customMountOptions);
const wrapper = shallowMount(damageReview, mountOptions);
wrapper.vm.setCmsContent = jest.fn();
return { wrapper };
}