diff --git a/src/layouts/payment-page/payment-page.spec.js b/src/layouts/payment-page/payment-page.spec.js index 4aea7c28..1a4fcb80 100644 --- a/src/layouts/payment-page/payment-page.spec.js +++ b/src/layouts/payment-page/payment-page.spec.js @@ -6,6 +6,7 @@ import { shallowMount } from '@vue/test-utils'; import { getMountOptions } from '@/helpers/unit-test-helper'; import { useMainStore } from '@/store'; import { paymentMethods, hopPaymentMethods } from '@/constants/payment-method-constants.js'; +import queryStrings from '@/constants/query-strings'; // Constants const parts = { @@ -116,10 +117,10 @@ jest.mock('@/helpers/cms-content-helper', () => ({ fetchCmsContentForPage: () => Promise.resolve('content') })); -function setupMocks({ customMountOptions }) { +function setupMocks({ customMountOptions = {}, queryString }) { const mountOptions = getMountOptions({ ...customMountOptions, - route: { query: { issPage: 'page-name' }, params: {} } + route: { query: { issPage: 'page-name', ...queryString }, params: {} } }); // set all mock stuff @@ -450,4 +451,21 @@ describe('payment-page.vue', () => { expect(clickFn).not.toBeCalled(); }); }); + + describe('Credit Card Error Alert', () => { + test('show credit card error alert', () => { + // Arrange + const queryString = { + [queryStrings.DISPLAY_PAY_IN_ADVANCE_ALERT]: paymentMethods.CREDIT_CARD + }; + const wrapper = setupMocks({ queryString }); + + // Act + + // Assert + const creditCardErrorAlert = wrapper.findComponent({ ref: 'payInAdvanceCreditCardErrorAlert' }); + expect(creditCardErrorAlert.exists()).toBeTruthy(); + expect(creditCardErrorAlert.isVisible()).toBeTruthy(); + }); + }); }); diff --git a/src/layouts/payment-page/payment-page.vue b/src/layouts/payment-page/payment-page.vue index b230d5ee..49afdb03 100644 --- a/src/layouts/payment-page/payment-page.vue +++ b/src/layouts/payment-page/payment-page.vue @@ -4,6 +4,15 @@