mirror of
https://github.com/Unleash/unleash.git
synced 2025-05-03 01:18:43 +02:00
chore: centralize events service creation (#5910)
## About the changes EventsService is a dependency in most of our services. This creates helper methods to create them easily and replace a few places where we're creating them manually
This commit is contained in:
parent
f22efdfddb
commit
2ddc56927e
@ -1,5 +1,4 @@
|
|||||||
import { Db, IUnleashConfig } from 'lib/server-impl';
|
import { Db, IUnleashConfig } from 'lib/server-impl';
|
||||||
import EventStore from '../../db/event-store';
|
|
||||||
import GroupStore from '../../db/group-store';
|
import GroupStore from '../../db/group-store';
|
||||||
import { AccountStore } from '../../db/account-store';
|
import { AccountStore } from '../../db/account-store';
|
||||||
import RoleStore from '../../db/role-store';
|
import RoleStore from '../../db/role-store';
|
||||||
@ -12,26 +11,21 @@ import { FakeAccountStore } from '../../../test/fixtures/fake-account-store';
|
|||||||
import FakeRoleStore from '../../../test/fixtures/fake-role-store';
|
import FakeRoleStore from '../../../test/fixtures/fake-role-store';
|
||||||
import FakeEnvironmentStore from '../project-environments/fake-environment-store';
|
import FakeEnvironmentStore from '../project-environments/fake-environment-store';
|
||||||
import FakeAccessStore from '../../../test/fixtures/fake-access-store';
|
import FakeAccessStore from '../../../test/fixtures/fake-access-store';
|
||||||
import FeatureTagStore from '../../db/feature-tag-store';
|
|
||||||
import FakeFeatureTagStore from '../../../test/fixtures/fake-feature-tag-store';
|
import FakeFeatureTagStore from '../../../test/fixtures/fake-feature-tag-store';
|
||||||
import { IEventStore } from '../../types';
|
import { IEventStore } from '../../types';
|
||||||
|
import { createEventsService } from '../events/createEventsService';
|
||||||
|
|
||||||
export const createAccessService = (
|
export const createAccessService = (
|
||||||
db: Db,
|
db: Db,
|
||||||
config: IUnleashConfig,
|
config: IUnleashConfig,
|
||||||
): AccessService => {
|
): AccessService => {
|
||||||
const { eventBus, getLogger, flagResolver } = config;
|
const { eventBus, getLogger, flagResolver } = config;
|
||||||
const eventStore = new EventStore(db, getLogger);
|
|
||||||
const groupStore = new GroupStore(db);
|
const groupStore = new GroupStore(db);
|
||||||
const accountStore = new AccountStore(db, getLogger);
|
const accountStore = new AccountStore(db, getLogger);
|
||||||
const roleStore = new RoleStore(db, eventBus, getLogger);
|
const roleStore = new RoleStore(db, eventBus, getLogger);
|
||||||
const environmentStore = new EnvironmentStore(db, eventBus, getLogger);
|
const environmentStore = new EnvironmentStore(db, eventBus, getLogger);
|
||||||
const accessStore = new AccessStore(db, eventBus, getLogger);
|
const accessStore = new AccessStore(db, eventBus, getLogger);
|
||||||
const featureTagStore = new FeatureTagStore(db, eventBus, getLogger);
|
const eventService = createEventsService(db, config);
|
||||||
const eventService = new EventService(
|
|
||||||
{ eventStore, featureTagStore },
|
|
||||||
config,
|
|
||||||
);
|
|
||||||
const groupService = new GroupService(
|
const groupService = new GroupService(
|
||||||
{ groupStore, accountStore },
|
{ groupStore, accountStore },
|
||||||
{ getLogger },
|
{ getLogger },
|
||||||
|
@ -4,32 +4,22 @@ import { DependentFeaturesStore } from './dependent-features-store';
|
|||||||
import { DependentFeaturesReadModel } from './dependent-features-read-model';
|
import { DependentFeaturesReadModel } from './dependent-features-read-model';
|
||||||
import { FakeDependentFeaturesStore } from './fake-dependent-features-store';
|
import { FakeDependentFeaturesStore } from './fake-dependent-features-store';
|
||||||
import { FakeDependentFeaturesReadModel } from './fake-dependent-features-read-model';
|
import { FakeDependentFeaturesReadModel } from './fake-dependent-features-read-model';
|
||||||
import EventStore from '../../db/event-store';
|
|
||||||
import { IUnleashConfig } from '../../types';
|
import { IUnleashConfig } from '../../types';
|
||||||
import { EventService } from '../../services';
|
|
||||||
import FeatureTagStore from '../../db/feature-tag-store';
|
|
||||||
import FakeEventStore from '../../../test/fixtures/fake-event-store';
|
|
||||||
import FakeFeatureTagStore from '../../../test/fixtures/fake-feature-tag-store';
|
|
||||||
import {
|
import {
|
||||||
createChangeRequestAccessReadModel,
|
createChangeRequestAccessReadModel,
|
||||||
createFakeChangeRequestAccessService,
|
createFakeChangeRequestAccessService,
|
||||||
} from '../change-request-access-service/createChangeRequestAccessReadModel';
|
} from '../change-request-access-service/createChangeRequestAccessReadModel';
|
||||||
import { FeaturesReadModel } from '../feature-toggle/features-read-model';
|
import { FeaturesReadModel } from '../feature-toggle/features-read-model';
|
||||||
import { FakeFeaturesReadModel } from '../feature-toggle/fakes/fake-features-read-model';
|
import { FakeFeaturesReadModel } from '../feature-toggle/fakes/fake-features-read-model';
|
||||||
|
import {
|
||||||
|
createEventsService,
|
||||||
|
createFakeEventsService,
|
||||||
|
} from '../events/createEventsService';
|
||||||
|
|
||||||
export const createDependentFeaturesService =
|
export const createDependentFeaturesService =
|
||||||
(config: IUnleashConfig) =>
|
(config: IUnleashConfig) =>
|
||||||
(db: Db): DependentFeaturesService => {
|
(db: Db): DependentFeaturesService => {
|
||||||
const { getLogger, eventBus } = config;
|
const eventService = createEventsService(db, config);
|
||||||
const eventStore = new EventStore(db, getLogger);
|
|
||||||
const featureTagStore = new FeatureTagStore(db, eventBus, getLogger);
|
|
||||||
const eventService = new EventService(
|
|
||||||
{
|
|
||||||
eventStore,
|
|
||||||
featureTagStore,
|
|
||||||
},
|
|
||||||
config,
|
|
||||||
);
|
|
||||||
const dependentFeaturesStore = new DependentFeaturesStore(db);
|
const dependentFeaturesStore = new DependentFeaturesStore(db);
|
||||||
const dependentFeaturesReadModel = new DependentFeaturesReadModel(db);
|
const dependentFeaturesReadModel = new DependentFeaturesReadModel(db);
|
||||||
const changeRequestAccessReadModel = createChangeRequestAccessReadModel(
|
const changeRequestAccessReadModel = createChangeRequestAccessReadModel(
|
||||||
@ -49,15 +39,7 @@ export const createDependentFeaturesService =
|
|||||||
export const createFakeDependentFeaturesService = (
|
export const createFakeDependentFeaturesService = (
|
||||||
config: IUnleashConfig,
|
config: IUnleashConfig,
|
||||||
): DependentFeaturesService => {
|
): DependentFeaturesService => {
|
||||||
const eventStore = new FakeEventStore();
|
const eventService = createFakeEventsService(config);
|
||||||
const featureTagStore = new FakeFeatureTagStore();
|
|
||||||
const eventService = new EventService(
|
|
||||||
{
|
|
||||||
eventStore,
|
|
||||||
featureTagStore,
|
|
||||||
},
|
|
||||||
config,
|
|
||||||
);
|
|
||||||
const dependentFeaturesStore = new FakeDependentFeaturesStore();
|
const dependentFeaturesStore = new FakeDependentFeaturesStore();
|
||||||
const dependentFeaturesReadModel = new FakeDependentFeaturesReadModel();
|
const dependentFeaturesReadModel = new FakeDependentFeaturesReadModel();
|
||||||
const changeRequestAccessReadModel = createFakeChangeRequestAccessService();
|
const changeRequestAccessReadModel = createFakeChangeRequestAccessService();
|
||||||
|
27
src/lib/features/events/createEventsService.ts
Normal file
27
src/lib/features/events/createEventsService.ts
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
import FakeEventStore from '../../../test/fixtures/fake-event-store';
|
||||||
|
import FakeFeatureTagStore from '../../../test/fixtures/fake-feature-tag-store';
|
||||||
|
import { Db } from '../../db/db';
|
||||||
|
import EventStore from '../../db/event-store';
|
||||||
|
import FeatureTagStore from '../../db/feature-tag-store';
|
||||||
|
import { EventService } from '../../services';
|
||||||
|
import { IUnleashConfig } from '../../types';
|
||||||
|
|
||||||
|
export const createEventsService: (
|
||||||
|
db: Db,
|
||||||
|
config: IUnleashConfig,
|
||||||
|
) => EventService = (db, config) => {
|
||||||
|
const eventStore = new EventStore(db, config.getLogger);
|
||||||
|
const featureTagStore = new FeatureTagStore(
|
||||||
|
db,
|
||||||
|
config.eventBus,
|
||||||
|
config.getLogger,
|
||||||
|
);
|
||||||
|
return new EventService({ eventStore, featureTagStore }, config);
|
||||||
|
};
|
||||||
|
|
||||||
|
export const createFakeEventsService: (config: IUnleashConfig) => EventService =
|
||||||
|
(config) => {
|
||||||
|
const eventStore = new FakeEventStore();
|
||||||
|
const featureTagStore = new FakeFeatureTagStore();
|
||||||
|
return new EventService({ eventStore, featureTagStore }, config);
|
||||||
|
};
|
@ -54,6 +54,7 @@ import {
|
|||||||
createDependentFeaturesService,
|
createDependentFeaturesService,
|
||||||
createFakeDependentFeaturesService,
|
createFakeDependentFeaturesService,
|
||||||
} from '../dependent-features/createDependentFeaturesService';
|
} from '../dependent-features/createDependentFeaturesService';
|
||||||
|
import { createEventsService } from '../events/createEventsService';
|
||||||
|
|
||||||
export const createFakeExportImportTogglesService = (
|
export const createFakeExportImportTogglesService = (
|
||||||
config: IUnleashConfig,
|
config: IUnleashConfig,
|
||||||
@ -196,13 +197,7 @@ export const deferredExportImportTogglesService = (
|
|||||||
const featureToggleService = createFeatureToggleService(db, config);
|
const featureToggleService = createFeatureToggleService(db, config);
|
||||||
const privateProjectChecker = createPrivateProjectChecker(db, config);
|
const privateProjectChecker = createPrivateProjectChecker(db, config);
|
||||||
|
|
||||||
const eventService = new EventService(
|
const eventService = createEventsService(db, config);
|
||||||
{
|
|
||||||
eventStore,
|
|
||||||
featureTagStore,
|
|
||||||
},
|
|
||||||
config,
|
|
||||||
);
|
|
||||||
|
|
||||||
const featureTagService = new FeatureTagService(
|
const featureTagService = new FeatureTagService(
|
||||||
{
|
{
|
||||||
|
@ -29,7 +29,6 @@ import { FakeAccountStore } from '../../../test/fixtures/fake-account-store';
|
|||||||
import FakeAccessStore from '../../../test/fixtures/fake-access-store';
|
import FakeAccessStore from '../../../test/fixtures/fake-access-store';
|
||||||
import FakeRoleStore from '../../../test/fixtures/fake-role-store';
|
import FakeRoleStore from '../../../test/fixtures/fake-role-store';
|
||||||
import FakeEnvironmentStore from '../project-environments/fake-environment-store';
|
import FakeEnvironmentStore from '../project-environments/fake-environment-store';
|
||||||
import EventStore from '../../db/event-store';
|
|
||||||
import {
|
import {
|
||||||
createChangeRequestAccessReadModel,
|
createChangeRequestAccessReadModel,
|
||||||
createFakeChangeRequestAccessService,
|
createFakeChangeRequestAccessService,
|
||||||
@ -52,6 +51,7 @@ import {
|
|||||||
createDependentFeaturesService,
|
createDependentFeaturesService,
|
||||||
createFakeDependentFeaturesService,
|
createFakeDependentFeaturesService,
|
||||||
} from '../dependent-features/createDependentFeaturesService';
|
} from '../dependent-features/createDependentFeaturesService';
|
||||||
|
import { createEventsService } from '../events/createEventsService';
|
||||||
|
|
||||||
export const createFeatureToggleService = (
|
export const createFeatureToggleService = (
|
||||||
db: Db,
|
db: Db,
|
||||||
@ -99,11 +99,7 @@ export const createFeatureToggleService = (
|
|||||||
const featureTagStore = new FeatureTagStore(db, eventBus, getLogger);
|
const featureTagStore = new FeatureTagStore(db, eventBus, getLogger);
|
||||||
const roleStore = new RoleStore(db, eventBus, getLogger);
|
const roleStore = new RoleStore(db, eventBus, getLogger);
|
||||||
const environmentStore = new EnvironmentStore(db, eventBus, getLogger);
|
const environmentStore = new EnvironmentStore(db, eventBus, getLogger);
|
||||||
const eventStore = new EventStore(db, getLogger);
|
const eventService = createEventsService(db, config);
|
||||||
const eventService = new EventService(
|
|
||||||
{ eventStore, featureTagStore },
|
|
||||||
{ getLogger },
|
|
||||||
);
|
|
||||||
const groupService = new GroupService(
|
const groupService = new GroupService(
|
||||||
{ groupStore, accountStore },
|
{ groupStore, accountStore },
|
||||||
{ getLogger },
|
{ getLogger },
|
||||||
|
@ -1,24 +1,18 @@
|
|||||||
import { IUnleashConfig } from '../../types';
|
import { IUnleashConfig } from '../../types';
|
||||||
import { EventService, GroupService } from '../../services';
|
import { GroupService } from '../../services';
|
||||||
import { Db } from '../../db/db';
|
import { Db } from '../../db/db';
|
||||||
import GroupStore from '../../db/group-store';
|
import GroupStore from '../../db/group-store';
|
||||||
import { AccountStore } from '../../db/account-store';
|
import { AccountStore } from '../../db/account-store';
|
||||||
import EventStore from '../../db/event-store';
|
import { createEventsService } from '../events/createEventsService';
|
||||||
import FeatureTagStore from '../../db/feature-tag-store';
|
|
||||||
|
|
||||||
export const createGroupService = (
|
export const createGroupService = (
|
||||||
db: Db,
|
db: Db,
|
||||||
config: IUnleashConfig,
|
config: IUnleashConfig,
|
||||||
): GroupService => {
|
): GroupService => {
|
||||||
const { getLogger, eventBus } = config;
|
const { getLogger } = config;
|
||||||
const groupStore = new GroupStore(db);
|
const groupStore = new GroupStore(db);
|
||||||
const accountStore = new AccountStore(db, getLogger);
|
const accountStore = new AccountStore(db, getLogger);
|
||||||
const eventStore = new EventStore(db, getLogger);
|
const eventService = createEventsService(db, config);
|
||||||
const featureTagStore = new FeatureTagStore(db, eventBus, getLogger);
|
|
||||||
const eventService = new EventService(
|
|
||||||
{ eventStore, featureTagStore },
|
|
||||||
{ getLogger },
|
|
||||||
);
|
|
||||||
const groupService = new GroupService(
|
const groupService = new GroupService(
|
||||||
{ groupStore, accountStore },
|
{ groupStore, accountStore },
|
||||||
{ getLogger },
|
{ getLogger },
|
||||||
|
@ -1,8 +1,6 @@
|
|||||||
import { Db } from '../../db/db';
|
import { Db } from '../../db/db';
|
||||||
import EventStore from '../../db/event-store';
|
|
||||||
import { IUnleashConfig } from '../../types';
|
import { IUnleashConfig } from '../../types';
|
||||||
import { EventService } from '../../services';
|
import { EventService } from '../../services';
|
||||||
import FeatureTagStore from '../../db/feature-tag-store';
|
|
||||||
import FakeEventStore from '../../../test/fixtures/fake-event-store';
|
import FakeEventStore from '../../../test/fixtures/fake-event-store';
|
||||||
import FakeFeatureTagStore from '../../../test/fixtures/fake-feature-tag-store';
|
import FakeFeatureTagStore from '../../../test/fixtures/fake-feature-tag-store';
|
||||||
import EnvironmentService from './environment-service';
|
import EnvironmentService from './environment-service';
|
||||||
@ -14,13 +12,12 @@ import FakeFeatureEnvironmentStore from '../../../test/fixtures/fake-feature-env
|
|||||||
import FakeProjectStore from '../../../test/fixtures/fake-project-store';
|
import FakeProjectStore from '../../../test/fixtures/fake-project-store';
|
||||||
import FakeFeatureStrategiesStore from '../feature-toggle/fakes/fake-feature-strategies-store';
|
import FakeFeatureStrategiesStore from '../feature-toggle/fakes/fake-feature-strategies-store';
|
||||||
import FakeEnvironmentStore from './fake-environment-store';
|
import FakeEnvironmentStore from './fake-environment-store';
|
||||||
|
import { createEventsService } from '../events/createEventsService';
|
||||||
|
|
||||||
export const createEnvironmentService =
|
export const createEnvironmentService =
|
||||||
(config: IUnleashConfig) =>
|
(config: IUnleashConfig) =>
|
||||||
(db: Db): EnvironmentService => {
|
(db: Db): EnvironmentService => {
|
||||||
const { getLogger, eventBus, flagResolver } = config;
|
const { getLogger, eventBus, flagResolver } = config;
|
||||||
const eventStore = new EventStore(db, getLogger);
|
|
||||||
const featureTagStore = new FeatureTagStore(db, eventBus, getLogger);
|
|
||||||
const featureEnvironmentStore = new FeatureEnvironmentStore(
|
const featureEnvironmentStore = new FeatureEnvironmentStore(
|
||||||
db,
|
db,
|
||||||
eventBus,
|
eventBus,
|
||||||
@ -39,13 +36,7 @@ export const createEnvironmentService =
|
|||||||
flagResolver,
|
flagResolver,
|
||||||
);
|
);
|
||||||
const environmentStore = new EnvironmentStore(db, eventBus, getLogger);
|
const environmentStore = new EnvironmentStore(db, eventBus, getLogger);
|
||||||
const eventService = new EventService(
|
const eventService = createEventsService(db, config);
|
||||||
{
|
|
||||||
eventStore,
|
|
||||||
featureTagStore,
|
|
||||||
},
|
|
||||||
config,
|
|
||||||
);
|
|
||||||
return new EnvironmentService(
|
return new EnvironmentService(
|
||||||
{
|
{
|
||||||
environmentStore,
|
environmentStore,
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
import { Db, IUnleashConfig } from 'lib/server-impl';
|
import { Db, IUnleashConfig } from 'lib/server-impl';
|
||||||
import EventStore from '../../db/event-store';
|
|
||||||
import { EventService, SegmentService } from '../../services';
|
import { EventService, SegmentService } from '../../services';
|
||||||
import FakeEventStore from '../../../test/fixtures/fake-event-store';
|
import FakeEventStore from '../../../test/fixtures/fake-event-store';
|
||||||
import { ISegmentService } from '../../segments/segment-service-interface';
|
import { ISegmentService } from '../../segments/segment-service-interface';
|
||||||
@ -19,15 +18,14 @@ import {
|
|||||||
createFakePrivateProjectChecker,
|
createFakePrivateProjectChecker,
|
||||||
createPrivateProjectChecker,
|
createPrivateProjectChecker,
|
||||||
} from '../private-project/createPrivateProjectChecker';
|
} from '../private-project/createPrivateProjectChecker';
|
||||||
import FeatureTagStore from '../../db/feature-tag-store';
|
|
||||||
import FakeFeatureTagStore from '../../../test/fixtures/fake-feature-tag-store';
|
import FakeFeatureTagStore from '../../../test/fixtures/fake-feature-tag-store';
|
||||||
|
import { createEventsService } from '../events/createEventsService';
|
||||||
|
|
||||||
export const createSegmentService = (
|
export const createSegmentService = (
|
||||||
db: Db,
|
db: Db,
|
||||||
config: IUnleashConfig,
|
config: IUnleashConfig,
|
||||||
): SegmentService => {
|
): SegmentService => {
|
||||||
const { eventBus, getLogger, flagResolver } = config;
|
const { eventBus, getLogger, flagResolver } = config;
|
||||||
const eventStore = new EventStore(db, getLogger);
|
|
||||||
const segmentStore = new SegmentStore(
|
const segmentStore = new SegmentStore(
|
||||||
db,
|
db,
|
||||||
eventBus,
|
eventBus,
|
||||||
@ -50,13 +48,7 @@ export const createSegmentService = (
|
|||||||
|
|
||||||
const privateProjectChecker = createPrivateProjectChecker(db, config);
|
const privateProjectChecker = createPrivateProjectChecker(db, config);
|
||||||
|
|
||||||
const eventService = new EventService(
|
const eventService = createEventsService(db, config);
|
||||||
{
|
|
||||||
eventStore,
|
|
||||||
featureTagStore: new FeatureTagStore(db, eventBus, getLogger),
|
|
||||||
},
|
|
||||||
config,
|
|
||||||
);
|
|
||||||
|
|
||||||
return new SegmentService(
|
return new SegmentService(
|
||||||
{ segmentStore, featureStrategiesStore },
|
{ segmentStore, featureStrategiesStore },
|
||||||
|
@ -1,27 +1,18 @@
|
|||||||
import { Db } from '../../db/db';
|
import { Db } from '../../db/db';
|
||||||
import EventStore from '../../db/event-store';
|
|
||||||
import { IUnleashConfig } from '../../types';
|
import { IUnleashConfig } from '../../types';
|
||||||
import { EventService } from '../../services';
|
|
||||||
import FeatureTagStore from '../../db/feature-tag-store';
|
|
||||||
import FakeEventStore from '../../../test/fixtures/fake-event-store';
|
|
||||||
import FakeFeatureTagStore from '../../../test/fixtures/fake-feature-tag-store';
|
|
||||||
import TagTypeService from './tag-type-service';
|
import TagTypeService from './tag-type-service';
|
||||||
import TagTypeStore from './tag-type-store';
|
import TagTypeStore from './tag-type-store';
|
||||||
import FakeTagTypeStore from './fake-tag-type-store';
|
import FakeTagTypeStore from './fake-tag-type-store';
|
||||||
|
import {
|
||||||
|
createEventsService,
|
||||||
|
createFakeEventsService,
|
||||||
|
} from '../events/createEventsService';
|
||||||
|
|
||||||
export const createTagTypeService =
|
export const createTagTypeService =
|
||||||
(config: IUnleashConfig) =>
|
(config: IUnleashConfig) =>
|
||||||
(db: Db): TagTypeService => {
|
(db: Db): TagTypeService => {
|
||||||
const { getLogger, eventBus } = config;
|
const { getLogger, eventBus } = config;
|
||||||
const eventStore = new EventStore(db, getLogger);
|
const eventService = createEventsService(db, config);
|
||||||
const featureTagStore = new FeatureTagStore(db, eventBus, getLogger);
|
|
||||||
const eventService = new EventService(
|
|
||||||
{
|
|
||||||
eventStore,
|
|
||||||
featureTagStore,
|
|
||||||
},
|
|
||||||
config,
|
|
||||||
);
|
|
||||||
const tagTypeStore = new TagTypeStore(db, eventBus, getLogger);
|
const tagTypeStore = new TagTypeStore(db, eventBus, getLogger);
|
||||||
return new TagTypeService({ tagTypeStore }, config, eventService);
|
return new TagTypeService({ tagTypeStore }, config, eventService);
|
||||||
};
|
};
|
||||||
@ -29,15 +20,7 @@ export const createTagTypeService =
|
|||||||
export const createFakeTagTypeService = (
|
export const createFakeTagTypeService = (
|
||||||
config: IUnleashConfig,
|
config: IUnleashConfig,
|
||||||
): TagTypeService => {
|
): TagTypeService => {
|
||||||
const eventStore = new FakeEventStore();
|
const eventService = createFakeEventsService(config);
|
||||||
const featureTagStore = new FakeFeatureTagStore();
|
|
||||||
const eventService = new EventService(
|
|
||||||
{
|
|
||||||
eventStore,
|
|
||||||
featureTagStore,
|
|
||||||
},
|
|
||||||
config,
|
|
||||||
);
|
|
||||||
const tagTypeStore = new FakeTagTypeStore();
|
const tagTypeStore = new FakeTagTypeStore();
|
||||||
|
|
||||||
return new TagTypeService({ tagTypeStore }, config, eventService);
|
return new TagTypeService({ tagTypeStore }, config, eventService);
|
||||||
|
@ -14,12 +14,10 @@ import FakeRoleStore from '../../test/fixtures/fake-role-store';
|
|||||||
import FakeEnvironmentStore from '../features/project-environments/fake-environment-store';
|
import FakeEnvironmentStore from '../features/project-environments/fake-environment-store';
|
||||||
import AccessStoreMock from '../../test/fixtures/fake-access-store';
|
import AccessStoreMock from '../../test/fixtures/fake-access-store';
|
||||||
import { GroupService } from '../services/group-service';
|
import { GroupService } from '../services/group-service';
|
||||||
import FakeEventStore from '../../test/fixtures/fake-event-store';
|
|
||||||
import { IRole } from '../../lib/types/stores/access-store';
|
import { IRole } from '../../lib/types/stores/access-store';
|
||||||
import { IGroup, ROLE_CREATED, SYSTEM_USER } from '../../lib/types';
|
import { IGroup, ROLE_CREATED, SYSTEM_USER } from '../../lib/types';
|
||||||
import EventService from './event-service';
|
|
||||||
import FakeFeatureTagStore from '../../test/fixtures/fake-feature-tag-store';
|
|
||||||
import BadDataError from '../../lib/error/bad-data-error';
|
import BadDataError from '../../lib/error/bad-data-error';
|
||||||
|
import { createFakeEventsService } from '../../lib/features/events/createEventsService';
|
||||||
|
|
||||||
function getSetup(customRootRolesKillSwitch: boolean = true) {
|
function getSetup(customRootRolesKillSwitch: boolean = true) {
|
||||||
const config = createTestConfig({
|
const config = createTestConfig({
|
||||||
@ -223,7 +221,6 @@ test('throws error when trying to delete a project role in use by group', async
|
|||||||
getLogger,
|
getLogger,
|
||||||
});
|
});
|
||||||
|
|
||||||
const eventStore = new FakeEventStore();
|
|
||||||
const groupStore = new FakeGroupStore();
|
const groupStore = new FakeGroupStore();
|
||||||
groupStore.getAllWithId = async (): Promise<IGroup[]> => {
|
groupStore.getAllWithId = async (): Promise<IGroup[]> => {
|
||||||
return [{ id: 1, name: 'group' }];
|
return [{ id: 1, name: 'group' }];
|
||||||
@ -239,10 +236,7 @@ test('throws error when trying to delete a project role in use by group', async
|
|||||||
accessStore.get = async (): Promise<IRole> => {
|
accessStore.get = async (): Promise<IRole> => {
|
||||||
return { id: 1, type: 'custom', name: 'project role' };
|
return { id: 1, type: 'custom', name: 'project role' };
|
||||||
};
|
};
|
||||||
const eventService = new EventService(
|
const eventService = createFakeEventsService(config);
|
||||||
{ eventStore, featureTagStore: new FakeFeatureTagStore() },
|
|
||||||
config,
|
|
||||||
);
|
|
||||||
const groupService = new GroupService(
|
const groupService = new GroupService(
|
||||||
{ groupStore, accountStore },
|
{ groupStore, accountStore },
|
||||||
{ getLogger },
|
{ getLogger },
|
||||||
|
Loading…
Reference in New Issue
Block a user