fix(tax): Make system provider registration backward compatible (#12441)
* fix(tax): Make provider registration backward compatible * add tests
This commit is contained in:
@@ -26,12 +26,12 @@ export const setupTaxStructure = async (service: ITaxModuleService) => {
|
||||
const [us, dk, de, ca] = await service.createTaxRegions([
|
||||
{
|
||||
country_code: "US",
|
||||
provider_id: "tp_system_system",
|
||||
provider_id: "tp_system",
|
||||
default_tax_rate: { name: "US Default Rate", rate: 2, code: "US_DEF" },
|
||||
},
|
||||
{
|
||||
country_code: "DK",
|
||||
provider_id: "tp_system_system",
|
||||
provider_id: "tp_system",
|
||||
default_tax_rate: {
|
||||
name: "Denmark Default Rate",
|
||||
rate: 25,
|
||||
@@ -40,7 +40,7 @@ export const setupTaxStructure = async (service: ITaxModuleService) => {
|
||||
},
|
||||
{
|
||||
country_code: "DE",
|
||||
provider_id: "tp_system_system",
|
||||
provider_id: "tp_system",
|
||||
default_tax_rate: {
|
||||
code: "DE19",
|
||||
name: "Germany Default Rate",
|
||||
@@ -49,7 +49,7 @@ export const setupTaxStructure = async (service: ITaxModuleService) => {
|
||||
},
|
||||
{
|
||||
country_code: "CA",
|
||||
provider_id: "tp_system_system",
|
||||
provider_id: "tp_system",
|
||||
default_tax_rate: {
|
||||
name: "Canada Default Rate",
|
||||
rate: 5,
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
import { ITaxModuleService } from "@medusajs/types"
|
||||
|
||||
import { Modules } from "@medusajs/utils"
|
||||
import { medusaIntegrationTestRunner } from "@medusajs/test-utils"
|
||||
import { ITaxModuleService } from "@medusajs/types"
|
||||
import { Modules } from "@medusajs/utils"
|
||||
import { createAdminUser } from "../../../../helpers/create-admin-user"
|
||||
|
||||
jest.setTimeout(50000)
|
||||
@@ -27,6 +26,20 @@ medusaIntegrationTestRunner({
|
||||
await createAdminUser(dbConnection, adminHeaders, appContainer)
|
||||
})
|
||||
|
||||
it("should load local provider and custom provider", async () => {
|
||||
const providers = await service.listTaxProviders()
|
||||
|
||||
expect(providers).toEqual(
|
||||
expect.arrayContaining([
|
||||
expect.objectContaining({ id: "tp_system", is_enabled: true }),
|
||||
expect.objectContaining({
|
||||
id: "tp_system_system_2",
|
||||
is_enabled: true,
|
||||
}),
|
||||
])
|
||||
)
|
||||
})
|
||||
|
||||
it("can retrieve a tax rate", async () => {
|
||||
const region = await service.createTaxRegions({
|
||||
country_code: "us",
|
||||
|
||||
@@ -10,6 +10,13 @@ process.env.LOG_LEVEL = "error"
|
||||
|
||||
const enableMedusaV2 = process.env.MEDUSA_FF_MEDUSA_V2 == "true"
|
||||
|
||||
const customTaxProviderRegistration = {
|
||||
resolve: {
|
||||
services: [require("@medusajs/tax/dist/providers/system").default],
|
||||
},
|
||||
id: "system_2",
|
||||
}
|
||||
|
||||
const customPaymentProvider = {
|
||||
resolve: {
|
||||
services: [require("@medusajs/payment/dist/providers/system").default],
|
||||
@@ -89,7 +96,12 @@ module.exports = {
|
||||
[Modules.WORKFLOW_ENGINE]: true,
|
||||
[Modules.API_KEY]: true,
|
||||
[Modules.STORE]: true,
|
||||
[Modules.TAX]: true,
|
||||
[Modules.TAX]: {
|
||||
resolve: "@medusajs/tax",
|
||||
options: {
|
||||
providers: [customTaxProviderRegistration],
|
||||
},
|
||||
},
|
||||
[Modules.CURRENCY]: true,
|
||||
[Modules.ORDER]: true,
|
||||
[Modules.PAYMENT]: {
|
||||
|
||||
Reference in New Issue
Block a user