fix(): medusa test runner (#6857)

This commit is contained in:
Adrien de Peretti authored and GitHub committed 2024-03-28 10:33:40 +01:00
1 parent f176aa2b7b
commit 6ee2ee845c
3 files changed
+24 -30

No files matched your search

+5
View File
@@ -0,0 +1,5 @@
---
"medusa-test-utils": patch
---
fix(): medusa test runner
@@ -19,7 +19,7 @@ module.exports = {
database_extra, database_extra,
env, env,
force_modules_migration, force_modules_migration,
dbUrl = DB_URL, dbUrl = "",
dbSchema = "public", dbSchema = "public",
}) { }) {
if (isObject(env)) { if (isObject(env)) {
@@ -67,7 +67,7 @@ module.exports = {
const dbDataSource = new DataSource({ const dbDataSource = new DataSource({
type: "postgres", type: "postgres",
url: dbUrl, url: dbUrl || configModule.projectConfig.database_url,
entities: enabledEntities.concat(moduleModels), entities: enabledEntities.concat(moduleModels),
migrations: enabledMigrations.concat(moduleMigrations), migrations: enabledMigrations.concat(moduleMigrations),
extra: database_extra ?? {}, extra: database_extra ?? {},
@@ -93,7 +93,16 @@ module.exports = {
const featureFlagRouter = await featureFlagLoader(configModule) const featureFlagRouter = await featureFlagLoader(configModule)
const pgConnection = await pgConnectionLoader({ configModule, container }) const pgConnection = await pgConnectionLoader({
configModule: {
...configModule,
projectConfig: {
...configModule.projectConfig,
database_url: dbUrl || configModule.projectConfig.database_url,
},
},
container,
})
container.register({ container.register({
[ContainerRegistrationKeys.CONFIG_MODULE]: asValue(configModule), [ContainerRegistrationKeys.CONFIG_MODULE]: asValue(configModule),
@@ -104,34 +104,14 @@ export function medusaIntegrationTestRunner({
debug, debug,
} }
// Intercept call to this utils to apply the unique client url for the current suite const originalConfigLoader =
const originalCreatePgConnection = require("@medusajs/medusa/dist/loaders/config").default
require("@medusajs/utils/dist/modules-sdk/create-pg-connection").createPgConnection require("@medusajs/medusa/dist/loaders/config").default = (
require("@medusajs/utils/dist/modules-sdk/create-pg-connection").createPgConnection = rootDirectory: string
(options: any) => {
return originalCreatePgConnection({
...options,
clientUrl: dbConfig.clientUrl,
})
}
const originalDatabaseLoader =
require("@medusajs/medusa/dist/loaders/database").default
require("@medusajs/medusa/dist/loaders/database").default = (
options: any
) => { ) => {
options.configModule.projectConfig.database_url const config = originalConfigLoader(rootDirectory)
return originalDatabaseLoader({ config.projectConfig.database_url = dbConfig.clientUrl
...options, return config
configModule: {
...options.configModule,
projectConfig: {
database_logging: debug, // Will be used for the debug flag of the database options
...options.configModule.projectConfig,
database_url: dbConfig.clientUrl,
},
},
})
} }
const cwd = process.cwd() const cwd = process.cwd()