From 8782016095e82a21ac3e623f7d6fa0413d86ae1e Mon Sep 17 00:00:00 2001 From: Oliver Windall Juhl <59018053+olivermrbl@users.noreply.github.com> Date: Wed, 15 Dec 2021 13:18:25 +0100 Subject: [PATCH] fix(medusa-payment-klarna): Default shipping fee name in Klarna plugin (#926) --- packages/medusa-payment-klarna/src/__mocks__/cart.js | 6 ++++++ .../src/services/__tests__/klarna-provider.js | 7 ++----- .../medusa-payment-klarna/src/services/klarna-provider.js | 6 +++--- 3 files changed, 11 insertions(+), 8 deletions(-) diff --git a/packages/medusa-payment-klarna/src/__mocks__/cart.js b/packages/medusa-payment-klarna/src/__mocks__/cart.js index 43d21984a3..b3eb771fe5 100644 --- a/packages/medusa-payment-klarna/src/__mocks__/cart.js +++ b/packages/medusa-payment-klarna/src/__mocks__/cart.js @@ -61,15 +61,21 @@ export const carts = { shipping_methods: [ { id: IdMap.getId("freeShipping"), + name: "Free shipping", data: { name: "test", }, + shipping_option: { + id: IdMap.getId("freeShipping"), + name: "Free shipping", + }, profile_id: "default_profile", }, ], shipping_options: [ { id: IdMap.getId("freeShipping"), + name: "Free shipping", profile_id: "default_profile", }, ], diff --git a/packages/medusa-payment-klarna/src/services/__tests__/klarna-provider.js b/packages/medusa-payment-klarna/src/services/__tests__/klarna-provider.js index 0d0f1b469c..f03ae306ea 100644 --- a/packages/medusa-payment-klarna/src/services/__tests__/klarna-provider.js +++ b/packages/medusa-payment-klarna/src/services/__tests__/klarna-provider.js @@ -1,11 +1,9 @@ jest.unmock("axios") -import axios from "axios" import MockAdapter from "axios-mock-adapter" - -import KlarnaProviderService from "../klarna-provider" import { carts } from "../../__mocks__/cart" -import { TotalsServiceMock } from "../../__mocks__/totals" import { RegionServiceMock } from "../../__mocks__/region" +import { TotalsServiceMock } from "../../__mocks__/totals" +import KlarnaProviderService from "../klarna-provider" describe("KlarnaProviderService", () => { describe("createPayment", () => { @@ -38,7 +36,6 @@ describe("KlarnaProviderService", () => { it("creates Klarna order", async () => { const result = await klarnaProviderService.createPayment(carts.frCart) - // expect(mockAxios.post).toHaveBeenCalledTimes(1) expect(result).toEqual({ order_id: "123456789", order_amount: 100, diff --git a/packages/medusa-payment-klarna/src/services/klarna-provider.js b/packages/medusa-payment-klarna/src/services/klarna-provider.js index edad067db5..dd5fe45210 100644 --- a/packages/medusa-payment-klarna/src/services/klarna-provider.js +++ b/packages/medusa-payment-klarna/src/services/klarna-provider.js @@ -1,5 +1,5 @@ -import _ from "lodash" import axios from "axios" +import _ from "lodash" import { PaymentService } from "medusa-interfaces" class KlarnaProviderService extends PaymentService { @@ -68,7 +68,7 @@ class KlarnaProviderService extends PaymentService { if (cart.shipping_methods.length) { const { name, price } = cart.shipping_methods.reduce( (acc, next) => { - acc.name = [...acc.name, next.data.name] + acc.name = [...acc.name, next?.shipping_option.name] acc.price += next.price return acc }, @@ -76,7 +76,7 @@ class KlarnaProviderService extends PaymentService { ) order_lines.push({ - name: name.join(" + "), + name: name?.join(" + ") || "Shipping fee", quantity: 1, type: "shipping_fee", unit_price: price * (1 + tax),