more tests!

This commit is contained in:
FrankRua 2022-02-02 10:04:30 -05:00
parent 66aa4190fb
commit 0765361f53
2 changed files with 82 additions and 33 deletions

View file

@ -16,11 +16,11 @@ export const state = {
style: null,
carId: null,
category: null,
damage: {
isRepair: null,
numberOfChips: null,
glassToReplace: null,
},
},
damage: {
isRepair: null,
numberOfChips: null,
glassToReplace: null,
},
},
applicationUser: {
@ -78,12 +78,12 @@ export const mutations = {
state.order.vehicle.category = null;
},
resetDamageAndDependencies(state) {
state.order.vehicle.damage.isRepair = null;
state.order.vehicle.damage.numberOfChips = null;
state.order.vehicle.damage.windshieldGlassToReplace = null;
state.order.vehicle.damage.driverSideGlassToReplace = null;
state.order.vehicle.damage.passengerSideGlassToReplace = null;
state.order.vehicle.damage.rearGlassToReplace = null;
state.order.damage.isRepair = null;
state.order.damage.numberOfChips = null;
state.order.damage.windshieldGlassToReplace = null;
state.order.damage.driverSideGlassToReplace = null;
state.order.damage.passengerSideGlassToReplace = null;
state.order.damage.rearGlassToReplace = null;
},
resetRegistrationAndDependencies(state) {

View file

@ -1,10 +1,11 @@
import globalMethods from "@/global-methods";
import { mutations, state, actions } from "@/store";
import { mutations, state, actions, getters } from "@/store";
import { storeMutations } from "@/constants/store-mutations";
// Mock global method
globalMethods.callHttpClient = jest.fn();
describe("Mutations", () => {
it("Updates vehicle year in state", () => {
@ -135,7 +136,7 @@ describe("Mutations", () => {
// Arrange
const storeState = state;
storeState.order.vehicle.damage = {
storeState.order.damage = {
isRepair: true,
numberOfChips: 2,
windshieldGlassToReplace: "Front",
@ -145,23 +146,23 @@ describe("Mutations", () => {
}
// Expect
expect(storeState.order.vehicle.damage.isRepair).toEqual(true);
expect(storeState.order.vehicle.damage.numberOfChips).toEqual(2);
expect(storeState.order.vehicle.damage.windshieldGlassToReplace).toEqual("Front");
expect(storeState.order.vehicle.damage.driverSideGlassToReplace).toEqual("Rear");
expect(storeState.order.vehicle.damage.passengerSideGlassToReplace).toEqual("Rear");
expect(storeState.order.vehicle.damage.rearGlassToReplace).toEqual("Slider");
expect(storeState.order.damage.isRepair).toEqual(true);
expect(storeState.order.damage.numberOfChips).toEqual(2);
expect(storeState.order.damage.windshieldGlassToReplace).toEqual("Front");
expect(storeState.order.damage.driverSideGlassToReplace).toEqual("Rear");
expect(storeState.order.damage.passengerSideGlassToReplace).toEqual("Rear");
expect(storeState.order.damage.rearGlassToReplace).toEqual("Slider");
// Act
mutations.resetDamageAndDependencies(storeState);
// Expect
expect(storeState.order.vehicle.damage.isRepair).toEqual(null);
expect(storeState.order.vehicle.damage.numberOfChips).toEqual(null);
expect(storeState.order.vehicle.damage.windshieldGlassToReplace).toEqual(null);
expect(storeState.order.vehicle.damage.driverSideGlassToReplace).toEqual(null);
expect(storeState.order.vehicle.damage.passengerSideGlassToReplace).toEqual(null);
expect(storeState.order.vehicle.damage.rearGlassToReplace).toEqual(null);
expect(storeState.order.damage.isRepair).toEqual(null);
expect(storeState.order.damage.numberOfChips).toEqual(null);
expect(storeState.order.damage.windshieldGlassToReplace).toEqual(null);
expect(storeState.order.damage.driverSideGlassToReplace).toEqual(null);
expect(storeState.order.damage.passengerSideGlassToReplace).toEqual(null);
expect(storeState.order.damage.rearGlassToReplace).toEqual(null);
});
@ -417,18 +418,66 @@ describe("Actions", () => {
});
it("getEvoxImage action, returns image url", async () => {
// Arrange
const context = state;
// Arrange
const context = state;
globalMethods.callHttpClient.mockImplementation(() => {
return Promise.resolve({ data: { imageUrl: "https://test.com" } });
});
globalMethods.callHttpClient.mockImplementation(() => {
return Promise.resolve({ data: { imageUrl: "https://test.com" } });
});
// Act
const response = await actions.getEvoxImage(context, { relativeUrl: "https://relativeurl.com" } );
// Act
const response = await actions.getEvoxImage(context, { relativeUrl: "https://relativeurl.com" });
expect(response.data).toEqual({ imageUrl: "https://test.com" });
expect(response.data).toEqual({ imageUrl: "https://test.com" });
});
});
describe("Getters", () => {
it("Vehicle getter, should return vehicle data", () => {
// Arrange
const storeState = state;
// Act
mutations.updateYear(storeState, "2019");
mutations.updateMake(storeState, "Acura");
mutations.updateModel(storeState, "ILX");
// Assert
expect(getters.vehicle(storeState).year).toEqual("2019");
expect(getters.vehicle(storeState).make).toEqual("Acura");
expect(getters.vehicle(storeState).model).toEqual("ILX");
});
it("Get event bus item by event category and eventSubCategory", () => {
// Arrange
const storeState = state;
const event = { category: "CategoryOne", subCategory: "SubCategoryOne", eventValue: "EventValueOne" };
// Act
mutations.addEventToBus(storeState, event);
// Assert
//expect(storeState.applicationUser.eventBus).toEqual([event]);
expect(getters.eventBusItem(storeState)(event.category, event.subCategory)).toEqual(event.eventValue);
});
it("Get event bus", () => {
// Arrange
const storeState = state;
storeState.applicationUser.eventBus = [];
const event = { category: "CategoryOne", subCategory: "SubCategoryOne", eventValue: "EventValueOne" };
// Act
mutations.addEventToBus(storeState, event);
// Assert
expect(getters.eventBus(storeState)).toEqual([event]);
});
});