diff --git a/src/layouts/service-location/appointment-type-question/appointment-type-question.spec.js b/src/layouts/service-location/appointment-type-question/appointment-type-question.spec.js index 63242df22..416d6918c 100644 --- a/src/layouts/service-location/appointment-type-question/appointment-type-question.spec.js +++ b/src/layouts/service-location/appointment-type-question/appointment-type-question.spec.js @@ -59,7 +59,7 @@ afterEach(() => { }); describe("appointment-type-question.vue", () => { - it("Should display all options if both in-shop and mobile are available", async () => { + it("Should display all options if in-shop, mobile, and dropoff are available", async () => { // Arrange/Act const { wrapper } = setupMocks({ mixins: [mockMixin], @@ -67,6 +67,7 @@ describe("appointment-type-question.vue", () => { cmsWidgetName: cmsWidgetName, isServiceableInshop: true, isServiceableMobile: true, + isServiceableDropoff: true, }, mountOptions: { attachTo: document.body, @@ -99,7 +100,7 @@ describe("appointment-type-question.vue", () => { ]); }); - it("Should display only the In-Shop and Drop-Off answers when only in-shop service is available", async () => { + it("Should display only the In-Shop answer when only in-shop service is available", async () => { // Arrange/Act const { wrapper } = setupMocks({ mixins: [mockMixin], @@ -107,6 +108,34 @@ describe("appointment-type-question.vue", () => { cmsWidgetName: cmsWidgetName, isServiceableInshop: true, isServiceableMobile: false, + isServiceableDropoff: false, + }, + mountOptions: { + attachTo: document.body, + }, + }); + + // Assert + expect(wrapper.vm.answersToDisplay).toEqual([ + { + AnswerImageUrl: "", + Name: "Inshop", + SubText: "", + SubWidgetName: "", + Text: "In-shop", + } + ]); + }); + + it("Should display only the In-Shop and Drop-Off answers when mobile service is not available", async () => { + // Arrange/Act + const { wrapper } = setupMocks({ + mixins: [mockMixin], + props: { + cmsWidgetName: cmsWidgetName, + isServiceableInshop: true, + isServiceableMobile: false, + isServiceableDropoff: true, }, mountOptions: { attachTo: document.body, @@ -140,6 +169,7 @@ describe("appointment-type-question.vue", () => { cmsWidgetName: cmsWidgetName, isServiceableInshop: false, isServiceableMobile: true, + isServiceableDropoff: false, }, mountOptions: { attachTo: document.body, @@ -172,6 +202,7 @@ describe("appointment-type-question.vue", () => { cmsWidgetName: cmsWidgetName, isServiceableInshop: true, isServiceableMobile: true, + isServiceableDropoff: true, }, mountOptions: { attachTo: document.body, @@ -205,6 +236,7 @@ describe("appointment-type-question.vue", () => { cmsWidgetName: cmsWidgetName, isServiceableInshop: false, isServiceableMobile: false, + isServiceableDropoff: false, }, mountOptions: { attachTo: document.body,