From 3ced6a3780cef30f1fb4f73a718e383e082f8637 Mon Sep 17 00:00:00 2001 From: Mateusz Kwasniewski Date: Mon, 31 Mar 2025 13:58:37 +0200 Subject: [PATCH] refactor: environments in feature directory (#9650) --- .../features/environments}/environment-oss.e2e.test.ts | 6 +++--- .../features/environments}/environment.test.ts | 8 ++++---- .../environments/environments-controller.ts} | 4 ++-- ...environments.ts => project-environments-controller.ts} | 2 +- ...ments.e2e.test.ts => project-environments.e2e.test.ts} | 0 src/lib/features/project/project-controller.ts | 7 +++++-- src/lib/routes/admin-api/index.ts | 2 +- 7 files changed, 16 insertions(+), 13 deletions(-) rename src/{test/e2e/api/admin => lib/features/environments}/environment-oss.e2e.test.ts (88%) rename src/{test/e2e/api/admin => lib/features/environments}/environment.test.ts (95%) rename src/lib/{routes/admin-api/environments.ts => features/environments/environments-controller.ts} (98%) rename src/lib/features/project-environments/{environments.ts => project-environments-controller.ts} (98%) rename src/lib/features/project-environments/{environments.e2e.test.ts => project-environments.e2e.test.ts} (100%) diff --git a/src/test/e2e/api/admin/environment-oss.e2e.test.ts b/src/lib/features/environments/environment-oss.e2e.test.ts similarity index 88% rename from src/test/e2e/api/admin/environment-oss.e2e.test.ts rename to src/lib/features/environments/environment-oss.e2e.test.ts index d072c9baa7..47dfaea742 100644 --- a/src/test/e2e/api/admin/environment-oss.e2e.test.ts +++ b/src/lib/features/environments/environment-oss.e2e.test.ts @@ -1,9 +1,9 @@ import { type IUnleashTest, setupAppWithCustomConfig, -} from '../../helpers/test-helper'; -import dbInit, { type ITestDb } from '../../helpers/database-init'; -import getLogger from '../../../fixtures/no-logger'; +} from '../../../test/e2e/helpers/test-helper'; +import dbInit, { type ITestDb } from '../../../test/e2e/helpers/database-init'; +import getLogger from '../../../test/fixtures/no-logger'; let app: IUnleashTest; let db: ITestDb; diff --git a/src/test/e2e/api/admin/environment.test.ts b/src/lib/features/environments/environment.test.ts similarity index 95% rename from src/test/e2e/api/admin/environment.test.ts rename to src/lib/features/environments/environment.test.ts index cc469a12db..88f2e5510e 100644 --- a/src/test/e2e/api/admin/environment.test.ts +++ b/src/lib/features/environments/environment.test.ts @@ -1,10 +1,10 @@ -import dbInit, { type ITestDb } from '../../helpers/database-init'; -import getLogger from '../../../fixtures/no-logger'; +import dbInit, { type ITestDb } from '../../../test/e2e/helpers/database-init'; +import getLogger from '../../../test/fixtures/no-logger'; import { type IUnleashTest, setupAppWithCustomConfig, -} from '../../helpers/test-helper'; -import { DEFAULT_ENV } from '../../../../lib/util/constants'; +} from '../../../test/e2e/helpers/test-helper'; +import { DEFAULT_ENV } from '../../util/constants'; let app: IUnleashTest; let db: ITestDb; diff --git a/src/lib/routes/admin-api/environments.ts b/src/lib/features/environments/environments-controller.ts similarity index 98% rename from src/lib/routes/admin-api/environments.ts rename to src/lib/features/environments/environments-controller.ts index 3780f2ed53..4e5af16b1b 100644 --- a/src/lib/routes/admin-api/environments.ts +++ b/src/lib/features/environments/environments-controller.ts @@ -1,8 +1,8 @@ import type { Request, Response } from 'express'; -import Controller from '../controller'; +import Controller from '../../routes/controller'; import type { IUnleashServices } from '../../types/services'; import type { IUnleashConfig } from '../../types/option'; -import type EnvironmentService from '../../features/project-environments/environment-service'; +import type EnvironmentService from '../project-environments/environment-service'; import type { Logger } from '../../logger'; import { ADMIN, NONE } from '../../types/permissions'; import type { OpenApiService } from '../../services/openapi-service'; diff --git a/src/lib/features/project-environments/environments.ts b/src/lib/features/project-environments/project-environments-controller.ts similarity index 98% rename from src/lib/features/project-environments/environments.ts rename to src/lib/features/project-environments/project-environments-controller.ts index 8664d00174..c175d2f45b 100644 --- a/src/lib/features/project-environments/environments.ts +++ b/src/lib/features/project-environments/project-environments-controller.ts @@ -29,7 +29,7 @@ interface IProjectEnvironmentParams { environment: string; } -export default class EnvironmentsController extends Controller { +export default class ProjectEnvironmentsController extends Controller { private logger: Logger; private environmentService: WithTransactional; diff --git a/src/lib/features/project-environments/environments.e2e.test.ts b/src/lib/features/project-environments/project-environments.e2e.test.ts similarity index 100% rename from src/lib/features/project-environments/environments.e2e.test.ts rename to src/lib/features/project-environments/project-environments.e2e.test.ts diff --git a/src/lib/features/project/project-controller.ts b/src/lib/features/project/project-controller.ts index 74f0852361..525b50a060 100644 --- a/src/lib/features/project/project-controller.ts +++ b/src/lib/features/project/project-controller.ts @@ -10,7 +10,7 @@ import { serializeDates, } from '../../types'; import ProjectFeaturesController from '../feature-toggle/feature-toggle-controller'; -import EnvironmentsController from '../project-environments/environments'; +import ProjectEnvironmentsController from '../project-environments/project-environments-controller'; import ProjectHealthReport from '../../routes/admin-api/project/health-report'; import type ProjectService from './project-service'; import VariantsController from '../../routes/admin-api/project/variants'; @@ -230,7 +230,10 @@ export default class ProjectController extends Controller { ).router, ); this.use('/', new DependentFeaturesController(config, services).router); - this.use('/', new EnvironmentsController(config, services).router); + this.use( + '/', + new ProjectEnvironmentsController(config, services).router, + ); this.use('/', new ProjectHealthReport(config, services).router); this.use('/', new VariantsController(config, services).router); this.use('/', new ProjectApiTokenController(config, services).router); diff --git a/src/lib/routes/admin-api/index.ts b/src/lib/routes/admin-api/index.ts index 5e4fd8fb74..841401a854 100644 --- a/src/lib/routes/admin-api/index.ts +++ b/src/lib/routes/admin-api/index.ts @@ -20,7 +20,7 @@ import EmailController from './email'; import UserFeedbackController from './user-feedback'; import UserSplashController from './user-splash'; import ProjectController from '../../features/project/project-controller'; -import { EnvironmentsController } from './environments'; +import { EnvironmentsController } from '../../features/environments/environments-controller'; import ConstraintsController from './constraints'; import PatController from './user/pat'; import { PublicSignupController } from './public-signup';