Skip to content

Commit 6641496

Browse files
committed
elastic testing using dependency injection
1 parent c24aad1 commit 6641496

File tree

3 files changed

+17
-8
lines changed

3 files changed

+17
-8
lines changed

src/apps/backoffice/backend/config/dependency-injection/Courses/application.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@ services:
22
Backoffice.Backend.courses.BackofficeCourseRepository:
33
class: ../../../../../../Contexts/Backoffice/infrastructure/MongoBackofficeCourseRepository
44
arguments: ['@Shared.ConnectionManager']
5+
Backoffice.Backend.courses.BackofficeCourseRepositoryElastic:
6+
class: ../../../../../../Contexts/Backoffice/infrastructure/ElasticBackofficeCourseRepository
7+
arguments: ['@Shared.ConnectionManagerElastic']
58

69
Backoffice.Backend.courses.CoursesFinder:
710
class: ../../../../../../Contexts/Backoffice/application/SearchAll/CoursesFinder

src/apps/backoffice/backend/config/dependency-injection/application_test.yaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,7 @@ imports:
44
services:
55
Backoffice.Backend.EnvironmentArranger:
66
class: ../../../../../../tests/Contexts/Shared/infrastructure/mongo/MongoEnvironmentArranger
7-
arguments: ['@Shared.ConnectionManager']
7+
arguments: ['@Shared.ConnectionManager']
8+
Backoffice.Backend.ElasticEnvironmentArranger:
9+
class: ../../../../../../tests/Contexts/Shared/infrastructure/elastic/ElasticEnvironmentArranger
10+
arguments: ['@Shared.ConnectionManagerElastic']

tests/Contexts/Backoffice/infrastructure/ElasticBackofficeCourseRepository.test.ts

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,22 @@
1+
import container from '../../../../src/apps/backoffice/backend/config/dependency-injection';
2+
import { BackofficeCourse } from '../../../../src/Contexts/Backoffice/domain/BackofficeCourse';
13
import { ElasticBackofficeCourseRepository } from '../../../../src/Contexts/Backoffice/infrastructure/ElasticBackofficeCourseRepository';
2-
import { ElasticClientFactory } from '../../../../src/Contexts/Shared/infrastructure/persistence/elasticsearch/ElasticClientFactory';
3-
import { ElasticEnvironmentArranger } from '../../Shared/infrastructure/elastic/ElasticEnvironmentArranger';
4+
import { EnvironmentArranger } from '../../Shared/infrastructure/arranger/EnvironmentArranger';
45
import { BackofficeCourseMother } from '../application/domain/BackofficeCourseMother';
5-
import { BackofficeCourse } from '../../../../src/Contexts/Backoffice/domain/BackofficeCourse';
66

7-
const client = ElasticClientFactory.createClient('test');
8-
const repository: ElasticBackofficeCourseRepository = new ElasticBackofficeCourseRepository(client);
9-
const environmentArranger = new ElasticEnvironmentArranger(client);
7+
const repository: ElasticBackofficeCourseRepository = container.get(
8+
'Backoffice.Backend.courses.BackofficeCourseRepositoryElastic'
9+
);
10+
const environmentArranger: Promise<EnvironmentArranger> = container.get(
11+
'Backoffice.Backend.ElasticEnvironmentArranger'
12+
);
1013

1114
function sort(backofficeCourse1: BackofficeCourse, backofficeCourse2: BackofficeCourse): number {
1215
return backofficeCourse1?.id?.value.localeCompare(backofficeCourse2?.id?.value);
1316
}
1417

1518
afterEach(async () => {
16-
await environmentArranger.arrange();
19+
await (await environmentArranger).arrange();
1720
});
1821

1922
describe('Search all courses', () => {

0 commit comments

Comments
 (0)