Adds provider service test; Better provider mock
This commit is contained in:
1 parent
d4517b9f00
commit
e5a400306c
4 files changed
+31
-10
No files matched your search
@@ -17,7 +17,7 @@ export const PaymentProviderServiceMock = {
|
|||||||
if (providerId === "default_provider") {
|
if (providerId === "default_provider") {
|
||||||
return DefaultProviderMock
|
return DefaultProviderMock
|
||||||
}
|
}
|
||||||
return undefined
|
throw new Error("Provider Not Found")
|
||||||
}),
|
}),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -695,9 +695,7 @@ describe("CartService", () => {
|
|||||||
PaymentProviderServiceMock.retrieveProvider
|
PaymentProviderServiceMock.retrieveProvider
|
||||||
).toHaveBeenCalledWith("unregistered")
|
).toHaveBeenCalledWith("unregistered")
|
||||||
|
|
||||||
expect(err.message).toEqual(
|
expect(err.message).toEqual(`Provider Not Found`)
|
||||||
`The payment provider for the payment method was not found`
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,29 @@
|
|||||||
|
import { createContainer, asValue } from "awilix"
|
||||||
|
import PaymentProviderService from "../payment-provider"
|
||||||
|
|
||||||
|
describe("ProductService", () => {
|
||||||
|
describe("retrieveProvider", () => {
|
||||||
|
const container = createContainer()
|
||||||
|
|
||||||
|
container.register({
|
||||||
|
pp_default_provider: asValue("good"),
|
||||||
|
})
|
||||||
|
|
||||||
|
const providerService = new PaymentProviderService(container)
|
||||||
|
|
||||||
|
it("successfully retrieves payment provider", () => {
|
||||||
|
const provider = providerService.retrieveProvider("default_provider")
|
||||||
|
expect(provider).toEqual("good")
|
||||||
|
})
|
||||||
|
|
||||||
|
it("fails when payment provider not found", () => {
|
||||||
|
try {
|
||||||
|
providerService.retrieveProvider("unregistered")
|
||||||
|
} catch (err) {
|
||||||
|
expect(err.message).toEqual(
|
||||||
|
"Could not find a payment provider with id: unregistered"
|
||||||
|
)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
})
|
||||||
@@ -432,12 +432,6 @@ class CartService extends BaseService {
|
|||||||
const provider = this.paymentProviderService_.retrieveProvider(
|
const provider = this.paymentProviderService_.retrieveProvider(
|
||||||
paymentMethod.provider_id
|
paymentMethod.provider_id
|
||||||
)
|
)
|
||||||
if (!provider) {
|
|
||||||
throw new MedusaError(
|
|
||||||
MedusaError.Types.NOT_FOUND,
|
|
||||||
`The payment provider for the payment method was not found`
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
const status = await provider.getStatus(paymentMethod.data)
|
const status = await provider.getStatus(paymentMethod.data)
|
||||||
if (status !== "authorized") {
|
if (status !== "authorized") {
|
||||||
|
|||||||
Reference in new issue
Block a user