diff --git a/src/iss-components/cart-dropdown/__snapshots__/cart-dropdown.spec.js.snap b/src/iss-components/cart-dropdown/__snapshots__/cart-dropdown.spec.js.snap index dc913570..37a7a4ee 100644 --- a/src/iss-components/cart-dropdown/__snapshots__/cart-dropdown.spec.js.snap +++ b/src/iss-components/cart-dropdown/__snapshots__/cart-dropdown.spec.js.snap @@ -2,6 +2,7 @@ exports[`cart-dropdown component initial data rendered as expected 1`] = ` Object { + "availableVaps": Array [], "cartItemType": Object { "MOBILE_FEE": "MOBILE FEE", "RECYCLE_FEE": "RECYCLE FEE", diff --git a/src/iss-components/cart-dropdown/cart-dropdown.spec.js b/src/iss-components/cart-dropdown/cart-dropdown.spec.js index 5977a501..50694fcc 100644 --- a/src/iss-components/cart-dropdown/cart-dropdown.spec.js +++ b/src/iss-components/cart-dropdown/cart-dropdown.spec.js @@ -57,7 +57,11 @@ beforeEach(() => { describe('cart-dropdown component', () => { test('initial data rendered as expected', () => { // Arrange - const { wrapper } = getMountedComponent({}); + const { wrapper } = getMountedComponent({ + order: { + availableVaps: [] + } + }); // Assert expect(wrapper.vm.$data).toMatchSnapshot(); @@ -74,6 +78,30 @@ describe('cart-dropdown component', () => { // Assert expect(head.exists()).toBeTruthy(); }); + test('cart dropdown head is visible', () => { + // Arrange + const reference = '#cart-dropdown-head'; + const { wrapper } = getMountedComponent(cartDropdown, {}, { showDropdownHeader: true }); + + // Act + const head = wrapper.find(reference); + + // Assert + expect(head.exists()).toBeTruthy(); + expect(head.classes()).toContain('cart-toggle'); + }); + test('cart dropdown head is not visible', () => { + // Arrange + const reference = '#cart-dropdown-head'; + const { wrapper } = getMountedComponent(cartDropdown, {}, { showDropdownHeader: false }); + + // Act + const head = wrapper.find(reference); + + // Assert + expect(head.exists()).toBeTruthy(); + expect(head.classes()).not.toContain('cart-toggle'); + }); test('cart table', () => { // Arrange const reference = '#cart-table'; @@ -468,7 +496,9 @@ describe('cart-dropdown component', () => { // Arrange const storeData = { order: { - policyLookupSuccessful: true, + policy: { + policyLookupSuccessful: true + }, currentDeductible: 250, lineItems: { glassParts: null, @@ -497,7 +527,9 @@ describe('cart-dropdown component', () => { // Arrange const storeData = { order: { - policyLookupSuccessful: true, + policy: { + policyLookupSuccessful: true + }, currentDeductible: 250, lineItems: { glassParts: [ @@ -533,7 +565,9 @@ describe('cart-dropdown component', () => { // Arrange const storeData = { order: { - policyLookupSuccessful: true, + policy: { + policyLookupSuccessful: true + }, currentDeductible: 250, lineItems: { glassParts: [{ partType: 'mock', salesTax: 10 }], @@ -568,7 +602,9 @@ describe('cart-dropdown component', () => { // Arrange const storeData = { order: { - policyLookupSuccessful: true, + policy: { + policyLookupSuccessful: true + }, currentDeductible: 250, lineItems: { glassParts: [{ partType: 'mock', salesTax: 10 }], @@ -599,7 +635,9 @@ describe('cart-dropdown component', () => { // Arrange const storeData = { order: { - policyLookupSuccessful: true, + policy: { + policyLookupSuccessful: true + }, currentDeductible: 250, lineItems: { glassParts: [{ partType: 'mock', salesTax: 10, sellingPrice: 150 }], @@ -641,7 +679,9 @@ describe('cart-dropdown component', () => { // Arrange const storeData = { order: { - policyLookupSuccessful: true, + policy: { + policyLookupSuccessful: true + }, currentDeductible: 250, lineItems: { glassParts: [{ partType: 'mock', salesTax: 10, sellingPrice: 100 }], @@ -678,7 +718,6 @@ describe('cart-dropdown component', () => { // Arrange const storeData = { order: { - policyLookupSuccessful: true, currentDeductible: 0, lineItems: { glassParts: [{ partType: 'mock', salesTax: 10, sellingPrice: 100 }], @@ -690,7 +729,8 @@ describe('cart-dropdown component', () => { insuranceCoverage: { isVerified: true } }, policy: { - isITAC: true + isITAC: true, + policyLookupSuccessful: true } }, issConfig: { @@ -710,7 +750,6 @@ describe('cart-dropdown component', () => { // Arrange const storeData = { order: { - policyLookupSuccessful: true, currentDeductible: 0, lineItems: { glassParts: [{ partType: 'mock', salesTax: 10, sellingPrice: 100 }], @@ -722,7 +761,8 @@ describe('cart-dropdown component', () => { insuranceCoverage: { isVerified: true } }, policy: { - noCoverage: true + noCoverage: true, + policyLookupSuccessful: true } }, issConfig: { @@ -826,8 +866,8 @@ describe('cart-dropdown component', () => { test('returns expected when availableVaps null', async () => { // Arrange const availableVaps = [{ partNumber: 'vaps1' }]; - const propsData = { availableVaps }; - const { wrapper } = getMountedComponent({}, {}, propsData); + const initialData = { availableVaps }; + const { wrapper } = getMountedComponent({}, initialData, {}); const expected = availableVaps; // Act @@ -854,10 +894,10 @@ describe('cart-dropdown component', () => { } } }; - const propsData = { + const initialData = { availableVaps: [part4, part5] }; - const { wrapper } = getMountedComponent(storeData, {}, propsData); + const { wrapper } = getMountedComponent(storeData, initialData, {}); const sortByPartType = (a, b) => { const typeA = a.partType.toUpperCase(); const typeB = b.partType.toUpperCase(); @@ -1770,8 +1810,10 @@ describe('cart-dropdown component', () => { order: { policy: { isITAC: false, - isNoComp: false + isNoComp: false, + policyLookupSuccessful: true }, +<<<<<<< HEAD currentDeductible: 321, policyLookupSuccessful: true, payment: { @@ -1779,6 +1821,9 @@ describe('cart-dropdown component', () => { coverageStatus: coverageStatuses.VERIFIED } }, +======= + currentDeductible: 321 +>>>>>>> develop } }; const { wrapper } = getMountedComponent(storeData); diff --git a/src/iss-components/cart-dropdown/cart-dropdown.vue b/src/iss-components/cart-dropdown/cart-dropdown.vue index e956e462..e68774fb 100644 --- a/src/iss-components/cart-dropdown/cart-dropdown.vue +++ b/src/iss-components/cart-dropdown/cart-dropdown.vue @@ -1,8 +1,9 @@