Skip to content

Commit cdd1397

Browse files
feat(orga): moved usecase
1 parent 7150907 commit cdd1397

25 files changed

+66
-55
lines changed

api/db/database-builder/factory/build-pole-emploi-sending.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { PoleEmploiSending } from '../../../src/shared/domain/models/PoleEmploiSending.js';
1+
import { PoleEmploiSending } from '../../../src/prescription/campaign-participation/domain/models/PoleEmploiSending.js';
22
import { databaseBuffer } from '../database-buffer.js';
33

44
const buildPoleEmploiSending = ({

api/lib/domain/events/index.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ import * as complementaryCertificationBadgesRepository from '../../../src/certif
1919
import * as flashAlgorithmConfigurationRepository from '../../../src/certification/shared/infrastructure/repositories/flash-algorithm-configuration-repository.js';
2020
import * as authenticationMethodRepository from '../../../src/identity-access-management/infrastructure/repositories/authentication-method.repository.js';
2121
import * as userRepository from '../../../src/identity-access-management/infrastructure/repositories/user.repository.js';
22+
import * as disabledPoleEmploiNotifier from '../../../src/prescription/campaign-participation/infrastructure/externals/pole-emploi/disabled-pole-emploi-notifier.js';
23+
import * as poleEmploiNotifier from '../../../src/prescription/campaign-participation/infrastructure/externals/pole-emploi/pole-emploi-notifier.js';
2224
import * as poleEmploiSendingRepository from '../../../src/prescription/campaign-participation/infrastructure/repositories/pole-emploi-sending-repository.js';
2325
import { config } from '../../../src/shared/config.js';
2426
import { monitoringTools as MonitoringTools } from '../../../src/shared/infrastructure/monitoring-tools.js';
@@ -34,8 +36,6 @@ import { logger } from '../../../src/shared/infrastructure/utils/logger.js';
3436
import * as eventBusBuilder from '../../infrastructure/events/EventBusBuilder.js';
3537
import { EventDispatcher } from '../../infrastructure/events/EventDispatcher.js';
3638
import { EventDispatcherLogger } from '../../infrastructure/events/EventDispatcherLogger.js';
37-
import * as disabledPoleEmploiNotifier from '../../infrastructure/externals/pole-emploi/disabled-pole-emploi-notifier.js';
38-
import * as poleEmploiNotifier from '../../infrastructure/externals/pole-emploi/pole-emploi-notifier.js';
3939
import * as badgeAcquisitionRepository from '../../infrastructure/repositories/badge-acquisition-repository.js';
4040
import * as campaignParticipationResultRepository from '../../infrastructure/repositories/campaign-participation-result-repository.js';
4141
import * as campaignRepository from '../../infrastructure/repositories/campaign-repository.js';

api/lib/domain/usecases/index.js

+11-10
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,8 @@ import { organizationForAdminRepository } from '../../../src/organizational-enti
7070
import { tagRepository } from '../../../src/organizational-entities/infrastructure/repositories/tag.repository.js';
7171
import * as campaignManagementRepository from '../../../src/prescription/campaign/infrastructure/repositories/campaign-management-repository.js';
7272
import * as divisionRepository from '../../../src/prescription/campaign/infrastructure/repositories/division-repository.js';
73+
import * as disabledPoleEmploiNotifier from '../../../src/prescription/campaign-participation/infrastructure/externals/pole-emploi/disabled-pole-emploi-notifier.js';
74+
import * as poleEmploiNotifier from '../../../src/prescription/campaign-participation/infrastructure/externals/pole-emploi/pole-emploi-notifier.js';
7375
import * as campaignAssessmentParticipationRepository from '../../../src/prescription/campaign-participation/infrastructure/repositories/campaign-assessment-participation-repository.js';
7476
import * as campaignAssessmentParticipationResultRepository from '../../../src/prescription/campaign-participation/infrastructure/repositories/campaign-assessment-participation-result-repository.js';
7577
import * as campaignParticipationRepository from '../../../src/prescription/campaign-participation/infrastructure/repositories/campaign-participation-repository.js';
@@ -124,8 +126,6 @@ import * as mailService from '../../domain/services/mail-service.js';
124126
import * as obfuscationService from '../../domain/services/obfuscation-service.js';
125127
import * as passwordGenerator from '../../domain/services/password-generator.js';
126128
import * as verifyCertificateCodeService from '../../domain/services/verify-certificate-code-service.js';
127-
import * as disabledPoleEmploiNotifier from '../../infrastructure/externals/pole-emploi/disabled-pole-emploi-notifier.js';
128-
import * as poleEmploiNotifier from '../../infrastructure/externals/pole-emploi/pole-emploi-notifier.js';
129129
import * as badgeAcquisitionRepository from '../../infrastructure/repositories/badge-acquisition-repository.js';
130130
import * as badgeForCalculationRepository from '../../infrastructure/repositories/badge-for-calculation-repository.js';
131131
import { campaignParticipationResultRepository } from '../../infrastructure/repositories/campaign-participation-result-repository.js';
@@ -156,14 +156,6 @@ import * as organizationValidator from '../validators/organization-with-tags-and
156156

157157
const oidcAuthenticationServiceRegistry = new OidcAuthenticationServiceRegistry({ oidcProviderRepository });
158158

159-
function requirePoleEmploiNotifier() {
160-
if (config.poleEmploi.pushEnabled) {
161-
return poleEmploiNotifier;
162-
} else {
163-
return disabledPoleEmploiNotifier;
164-
}
165-
}
166-
167159
/**
168160
* Using {@link https://jsdoc.app/tags-type "Closure Compiler's syntax"} to document injected dependencies
169161
*
@@ -192,6 +184,15 @@ function requirePoleEmploiNotifier() {
192184
* @typedef {assessmentRepository} AssessmentRepository
193185
* @typedef {sessionManagementCertificationRepository} SessionManagementCertificationRepository
194186
*/
187+
188+
function requirePoleEmploiNotifier() {
189+
if (config.poleEmploi.pushEnabled) {
190+
return poleEmploiNotifier;
191+
} else {
192+
return disabledPoleEmploiNotifier;
193+
}
194+
}
195+
195196
const dependencies = {
196197
accountRecoveryDemandRepository,
197198
certificationCompletedJobRepository,

api/lib/domain/usecases/send-completed-participation-results-to-pole-emploi.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
import { PoleEmploiSending } from '../../../src/shared/domain/models/PoleEmploiSending.js';
1+
import { PoleEmploiSending } from '../../../src/prescription/campaign-participation/domain/models/PoleEmploiSending.js';
2+
import { PoleEmploiPayload } from '../../../src/prescription/campaign-participation/infrastructure/externals/pole-emploi/PoleEmploiPayload.js';
23
import { logger } from '../../../src/shared/infrastructure/utils/logger.js';
3-
import { PoleEmploiPayload } from '../../infrastructure/externals/pole-emploi/PoleEmploiPayload.js';
44
import * as httpErrorsHelper from '../../infrastructure/http/errors-helper.js';
55
import { httpAgent } from '../../infrastructure/http/http-agent.js';
66

api/lib/domain/usecases/send-shared-participation-results-to-pole-emploi.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
import { PoleEmploiSending } from '../../../src/shared/domain/models/PoleEmploiSending.js';
1+
import { PoleEmploiSending } from '../../../src/prescription/campaign-participation/domain/models/PoleEmploiSending.js';
2+
import { PoleEmploiPayload } from '../../../src/prescription/campaign-participation/infrastructure/externals/pole-emploi/PoleEmploiPayload.js';
23
import { logger } from '../../../src/shared/infrastructure/utils/logger.js';
3-
import { PoleEmploiPayload } from '../../infrastructure/externals/pole-emploi/PoleEmploiPayload.js';
44
import * as httpErrorsHelper from '../../infrastructure/http/errors-helper.js';
55
import { httpAgent } from '../../infrastructure/http/http-agent.js';
66

api/scripts/prod/insert-missing-pole-emploi-sending-from-date.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,18 @@ import * as url from 'node:url';
33
import dayjs from 'dayjs';
44

55
import { disconnect, knex } from '../../db/knex-database-connection.js';
6-
import { PoleEmploiPayload } from '../../lib/infrastructure/externals/pole-emploi/PoleEmploiPayload.js';
76
import * as badgeAcquisitionRepository from '../../lib/infrastructure/repositories/badge-acquisition-repository.js';
87
import { campaignParticipationResultRepository } from '../../lib/infrastructure/repositories/campaign-participation-result-repository.js';
98
import * as campaignRepository from '../../lib/infrastructure/repositories/campaign-repository.js';
109
import * as targetProfileRepository from '../../lib/infrastructure/repositories/target-profile-repository.js';
1110
import * as badgeRepository from '../../src/evaluation/infrastructure/repositories/badge-repository.js';
1211
import * as userRepository from '../../src/identity-access-management/infrastructure/repositories/user.repository.js';
12+
import { PoleEmploiSending } from '../../src/prescription/campaign-participation/domain/models/PoleEmploiSending.js';
13+
import { PoleEmploiPayload } from '../../src/prescription/campaign-participation/infrastructure/externals/pole-emploi/PoleEmploiPayload.js';
1314
import * as campaignParticipationRepository from '../../src/prescription/campaign-participation/infrastructure/repositories/campaign-participation-repository.js';
1415
import * as poleEmploiSendingRepository from '../../src/prescription/campaign-participation/infrastructure/repositories/pole-emploi-sending-repository.js';
1516
import { CampaignParticipationStatuses } from '../../src/prescription/shared/domain/constants.js';
1617
import { Assessment } from '../../src/shared/domain/models/Assessment.js';
17-
import { PoleEmploiSending } from '../../src/shared/domain/models/PoleEmploiSending.js';
1818
import * as assessmentRepository from '../../src/shared/infrastructure/repositories/assessment-repository.js';
1919
import * as organizationRepository from '../../src/shared/infrastructure/repositories/organization-repository.js';
2020
import { logger } from '../../src/shared/infrastructure/utils/logger.js';

api/src/prescription/campaign-participation/application/jobs/participation-started-job-controller.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
import { usecases } from '../../../../../lib/domain/usecases/index.js';
21
import { JobController } from '../../../../shared/application/jobs/job-controller.js';
32
import { ParticipationStartedJob } from '../../domain/models/ParticipationStartedJob.js';
3+
import { usecases } from '../../domain/usecases/index.js';
44

55
export class ParticipationStartedJobController extends JobController {
66
constructor() {

api/src/prescription/campaign-participation/domain/usecases/index.js

+13
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,14 @@ import * as compareStagesAndAcquiredStages from '../../../../evaluation/domain/s
1414
import * as competenceEvaluationRepository from '../../../../evaluation/infrastructure/repositories/competence-evaluation-repository.js';
1515
import * as stageAcquisitionRepository from '../../../../evaluation/infrastructure/repositories/stage-acquisition-repository.js';
1616
import * as stageRepository from '../../../../evaluation/infrastructure/repositories/stage-repository.js';
17+
import { config } from '../../../../shared/config.js';
1718
import * as areaRepository from '../../../../shared/infrastructure/repositories/area-repository.js';
1819
import * as assessmentRepository from '../../../../shared/infrastructure/repositories/assessment-repository.js';
1920
import * as competenceRepository from '../../../../shared/infrastructure/repositories/competence-repository.js';
2021
import { injectDependencies } from '../../../../shared/infrastructure/utils/dependency-injection.js';
2122
import { importNamedExportsFromDirectory } from '../../../../shared/infrastructure/utils/import-named-exports-from-directory.js';
23+
import * as disabledPoleEmploiNotifier from '../../infrastructure/externals/pole-emploi/disabled-pole-emploi-notifier.js';
24+
import * as poleEmploiNotifier from '../../infrastructure/externals/pole-emploi/pole-emploi-notifier.js';
2225
import * as campaignAnalysisRepository from '../../infrastructure/repositories/campaign-analysis-repository.js';
2326
import * as campaignAssessmentParticipationRepository from '../../infrastructure/repositories/campaign-assessment-participation-repository.js';
2427
import * as campaignAssessmentParticipationResultRepository from '../../infrastructure/repositories/campaign-assessment-participation-result-repository.js';
@@ -34,6 +37,7 @@ import { participantResultsSharedRepository } from '../../infrastructure/reposit
3437
import * as participationsForCampaignManagementRepository from '../../infrastructure/repositories/participations-for-campaign-management-repository.js';
3538
import * as participationsForUserManagementRepository from '../../infrastructure/repositories/participations-for-user-management-repository.js';
3639
import * as poleEmploiSendingRepository from '../../infrastructure/repositories/pole-emploi-sending-repository.js';
40+
3741
/**
3842
* @typedef { import ('../../../../shared/infrastructure/repositories/area-repository.js')} AreaRepository
3943
* @typedef { import ('../../../../shared/infrastructure/repositories/assessment-repository.js')} AssessmentRepository
@@ -68,6 +72,14 @@ import * as poleEmploiSendingRepository from '../../infrastructure/repositories/
6872
* @typedef { import ('../../../../devcomp/infrastructure/repositories/tutorial-repository.js')} TutorialRepository
6973
*/
7074

75+
function requirePoleEmploiNotifier() {
76+
if (config.poleEmploi.pushEnabled) {
77+
return poleEmploiNotifier;
78+
} else {
79+
return disabledPoleEmploiNotifier;
80+
}
81+
}
82+
7183
const dependencies = {
7284
areaRepository,
7385
assessmentRepository,
@@ -95,6 +107,7 @@ const dependencies = {
95107
participationSharedJobRepository,
96108
participationStartedJobRepository,
97109
participantResultsSharedRepository,
110+
poleEmploiNotifier: requirePoleEmploiNotifier(),
98111
poleEmploiSendingRepository,
99112
stageAcquisitionRepository,
100113
stageCollectionRepository,

api/lib/domain/usecases/send-started-participation-results-to-pole-emploi.js api/src/prescription/campaign-participation/domain/usecases/send-started-participation-results-to-pole-emploi.js

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
import { PoleEmploiSending } from '../../../src/shared/domain/models/PoleEmploiSending.js';
2-
import { logger } from '../../../src/shared/infrastructure/utils/logger.js';
1+
import * as httpErrorsHelper from '../../../../../lib/infrastructure/http/errors-helper.js';
2+
import { httpAgent } from '../../../../../lib/infrastructure/http/http-agent.js';
3+
import { logger } from '../../../../shared/infrastructure/utils/logger.js';
34
import { PoleEmploiPayload } from '../../infrastructure/externals/pole-emploi/PoleEmploiPayload.js';
4-
import * as httpErrorsHelper from '../../infrastructure/http/errors-helper.js';
5-
import { httpAgent } from '../../infrastructure/http/http-agent.js';
5+
import { PoleEmploiSending } from '../models/PoleEmploiSending.js';
66

77
const sendStartedParticipationResultsToPoleEmploi = async ({
88
campaignParticipationId,

api/lib/infrastructure/externals/pole-emploi/PoleEmploiPayload.js api/src/prescription/campaign-participation/infrastructure/externals/pole-emploi/PoleEmploiPayload.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import _ from 'lodash';
22

3-
import { config } from '../../../../src/shared/config.js';
3+
import { config } from '../../../../../shared/config.js';
44

55
const CAMPAIGN_TYPE = 'EVALUATION';
66
const STRUCTURE_NAME = 'Pix';

api/lib/infrastructure/externals/pole-emploi/pole-emploi-notifier.js api/src/prescription/campaign-participation/infrastructure/externals/pole-emploi/pole-emploi-notifier.js

+4-4
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@ import querystring from 'node:querystring';
66

77
import dayjs from 'dayjs';
88

9-
import * as OidcIdentityProviders from '../../../../src/identity-access-management/domain/constants/oidc-identity-providers.js';
10-
import { AuthenticationMethod } from '../../../../src/identity-access-management/domain/models/AuthenticationMethod.js';
11-
import { config } from '../../../../src/shared/config.js';
12-
import { UnexpectedUserAccountError } from '../../../../src/shared/domain/errors.js';
9+
import * as OidcIdentityProviders from '../../../../../identity-access-management/domain/constants/oidc-identity-providers.js';
10+
import { AuthenticationMethod } from '../../../../../identity-access-management/domain/models/AuthenticationMethod.js';
11+
import { config } from '../../../../../shared/config.js';
12+
import { UnexpectedUserAccountError } from '../../../../../shared/domain/errors.js';
1313

1414
const notify = async (userId, payload, dependencies) => {
1515
const { authenticationMethodRepository, httpAgent, httpErrorsHelper, logger } = dependencies;

api/src/shared/domain/models/index.js

-2
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,6 @@ import { OrganizationMemberIdentity } from './OrganizationMemberIdentity.js';
9292
import { OrganizationTag } from './OrganizationTag.js';
9393
import { PartnerCertificationScoring } from './PartnerCertificationScoring.js';
9494
import { PlacementProfile } from './PlacementProfile.js';
95-
import { PoleEmploiSending } from './PoleEmploiSending.js';
9695
import { ReproducibilityRate } from './ReproducibilityRate.js';
9796
import { ScoringSimulation } from './ScoringSimulation.js';
9897
import { ScoringSimulationContext } from './ScoringSimulationContext.js';
@@ -192,7 +191,6 @@ export {
192191
OrganizationTag,
193192
PartnerCertificationScoring,
194193
PlacementProfile,
195-
PoleEmploiSending,
196194
PrivateCertificate,
197195
Progression,
198196
ReproducibilityRate,

api/tests/integration/domain/usecases/send-completed-participation-results-to-pole-emploi_test.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { usecases } from '../../../../lib/domain/usecases/index.js';
2-
import * as poleEmploiNotifier from '../../../../lib/infrastructure/externals/pole-emploi/pole-emploi-notifier.js';
2+
import * as poleEmploiNotifier from '../../../../src/prescription/campaign-participation/infrastructure/externals/pole-emploi/pole-emploi-notifier.js';
33
import {
44
databaseBuilder,
55
expect,

api/tests/integration/domain/usecases/send-shared-participation-results-to-pole-emploi_test.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { usecases } from '../../../../lib/domain/usecases/index.js';
2-
import * as poleEmploiNotifier from '../../../../lib/infrastructure/externals/pole-emploi/pole-emploi-notifier.js';
2+
import * as poleEmploiNotifier from '../../../../src/prescription/campaign-participation/infrastructure/externals/pole-emploi/pole-emploi-notifier.js';
33
import {
44
databaseBuilder,
55
expect,

api/tests/integration/scripts/prod/insert-missing-pole-emploi-sending-from-date_test.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@ import dayjs from 'dayjs';
22

33
import { insertMissingPoleEmploiSendingFromDate } from '../../../../scripts/prod/insert-missing-pole-emploi-sending-from-date.js';
44
import { Tag } from '../../../../src/organizational-entities/domain/models/Tag.js';
5+
import { PoleEmploiSending } from '../../../../src/prescription/campaign-participation/domain/models/PoleEmploiSending.js';
56
import { CampaignParticipationStatuses, CampaignTypes } from '../../../../src/prescription/shared/domain/constants.js';
67
import { Assessment } from '../../../../src/shared/domain/models/Assessment.js';
7-
import { PoleEmploiSending } from '../../../../src/shared/domain/models/PoleEmploiSending.js';
88
import {
99
catchErr,
1010
databaseBuilder,

api/tests/integration/domain/usecases/send-started-participation-results-to-pole-emploi_test.js api/tests/prescription/campaign-participation/integration/domain/usecases/send-started-participation-results-to-pole-emploi_test.js

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
1-
import { usecases } from '../../../../lib/domain/usecases/index.js';
2-
import * as poleEmploiNotifier from '../../../../lib/infrastructure/externals/pole-emploi/pole-emploi-notifier.js';
1+
import { usecases } from '../../../../../../src/prescription/campaign-participation/domain/usecases/index.js';
2+
import * as poleEmploiNotifier from '../../../../../../src/prescription/campaign-participation/infrastructure/externals/pole-emploi/pole-emploi-notifier.js';
33
import {
44
databaseBuilder,
55
expect,
66
knex,
77
learningContentBuilder,
88
mockLearningContent,
99
sinon,
10-
} from '../../../test-helper.js';
10+
} from '../../../../../test-helper.js';
1111

1212
describe('Integration | Application | send-started-participation-results-to-pole-emploi', function () {
1313
let campaignParticipationId, userId, responseCode;

api/tests/prescription/campaign-participation/unit/application/jobs/participation-started-job-controller_test.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
import { usecases } from '../../../../../../lib/domain/usecases/index.js';
21
import { ParticipationStartedJobController } from '../../../../../../src/prescription/campaign-participation/application/jobs/participation-started-job-controller.js';
2+
import { usecases } from '../../../../../../src/prescription/campaign-participation/domain/usecases/index.js';
33
import { expect, sinon } from '../../../../../test-helper.js';
44

55
describe('Unit | Application | Controller | Jobs | participation-started-controller', function () {

api/tests/unit/domain/models/PoleEmploiSending_test.js api/tests/prescription/campaign-participation/unit/domain/models/PoleEmploiSending_test.js

+2-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1-
import { PoleEmploiSending } from '../../../../src/shared/domain/models/PoleEmploiSending.js';
2-
import { domainBuilder, expect } from '../../../test-helper.js';
3-
1+
import { PoleEmploiSending } from '../../../../../../src/prescription/campaign-participation/domain/models/PoleEmploiSending.js';
2+
import { domainBuilder, expect } from '../../../../../test-helper.js';
43
describe('Unit | Domain | Models | PoleEmploiSending', function () {
54
let expectedPoleEmploiSending;
65

api/tests/unit/infrastructure/externals/pole-emploi/PoleEmploiPayload_test.js api/tests/prescription/campaign-participation/unit/infrastructure/externals/pole-emploi/PoleEmploiPayload_test.js

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
import { PoleEmploiPayload } from '../../../../../lib/infrastructure/externals/pole-emploi/PoleEmploiPayload.js';
2-
import { config } from '../../../../../src/shared/config.js';
3-
import { domainBuilder, expect } from '../../../../test-helper.js';
1+
import { PoleEmploiPayload } from '../../../../../../../src/prescription/campaign-participation/infrastructure/externals/pole-emploi/PoleEmploiPayload.js';
2+
import { config } from '../../../../../../../src/shared/config.js';
3+
import { domainBuilder, expect } from '../../../../../../test-helper.js';
44

55
describe('Unit | Infrastructure | Externals | Pole-Emploi | PoleEmploiPayload', function () {
66
let user;

api/tests/unit/infrastructure/externals/pole-emploi/disabled-pole-emploi-notifier_test.js api/tests/prescription/campaign-participation/unit/infrastructure/externals/pole-emploi/disabled-pole-emploi-notifier_test.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
import { notify } from '../../../../../lib/infrastructure/externals/pole-emploi/disabled-pole-emploi-notifier.js';
2-
import { expect } from '../../../../test-helper.js';
1+
import { notify } from '../../../../../../../src/prescription/campaign-participation/infrastructure/externals/pole-emploi/disabled-pole-emploi-notifier.js';
2+
import { expect } from '../../../../../../test-helper.js';
33

44
describe('Unit | Infrastructure | Externals/Pole-Emploi | pole-emploi-notifier', function () {
55
describe('#notify', function () {

0 commit comments

Comments
 (0)