Skip to content

Commit

Permalink
fix: courriels field name and missing etapes numeriques label (#58)
Browse files Browse the repository at this point in the history
  • Loading branch information
marc-gavanier authored Jul 18, 2024
1 parent 494d4ab commit 7e1c058
Show file tree
Hide file tree
Showing 12 changed files with 26 additions and 21 deletions.
6 changes: 3 additions & 3 deletions src/models/contact/contact.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ describe('contact model', (): void => {
it('should create a valid contact', (): void => {
const contactData: ContactToValidate = {
telephone: '+33145896378',
courriel: [Courriel('[email protected]')],
courriels: [Courriel('[email protected]')],
site_web: [Url('http://www.cartographienationale.fr')]
};

Expand All @@ -30,7 +30,7 @@ describe('contact model', (): void => {

it('should create a valid contact with only courriel property', (): void => {
const contactData: ContactToValidate = {
courriel: [Courriel('[email protected]')]
courriels: [Courriel('[email protected]')]
};

const contact: Contact = Contact(contactData);
Expand All @@ -41,7 +41,7 @@ describe('contact model', (): void => {
it('should create a valid contact with a phone from French Guiana', (): void => {
const contactData: ContactToValidate = {
telephone: '+594694020905',
courriel: [Courriel('[email protected]')],
courriels: [Courriel('[email protected]')],
site_web: [Url('https://www.facebook.com/YenkumuLutuPapaichton/')]
};

Expand Down
2 changes: 1 addition & 1 deletion src/models/contact/contact.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ export type Contact = Model<
{
telephone?: string;
/* eslint-disable-next-line @typescript-eslint/naming-convention */
courriel?: Courriel[];
courriels?: Courriel[];
/* eslint-disable-next-line @typescript-eslint/naming-convention */
site_web?: Url[];
}
Expand Down
1 change: 1 addition & 0 deletions src/models/formation-label/formation-label.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ export enum FormationLabel {
FormeADuplex = 'Formé à « DUPLEX » (illettrisme)',
ArniaMednum = 'Arnia/MedNum BFC (Bourgogne-Franche-Comté)',
CollectifRessourcesEtActeursReemploi = 'Collectif ressources et acteurs réemploi (Normandie)',
EtapesNumeriques = 'Étapes numériques (La Poste)',
FabriquesDeTerritoire = 'Fabriques de Territoire',
LesEclaireurs = 'Les Éclaireurs du numérique (Drôme)',
MesPapiers = 'Mes Papiers (Métropole de Lyon)',
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,7 @@ const FORMATIONS_LABELS_MAP: Map<string, FormationLabel> = new Map<string, Forma
['duplex', FormationLabel.FormeADuplex],
['arnia', FormationLabel.ArniaMednum],
['ressources-reemploi', FormationLabel.CollectifRessourcesEtActeursReemploi],
['etapes-numeriques', FormationLabel.EtapesNumeriques],
['fabrique-de-territoire', FormationLabel.FabriquesDeTerritoire],
['les-eclaireurs', FormationLabel.LesEclaireurs],
['mes-papiers', FormationLabel.MesPapiers],
Expand Down Expand Up @@ -222,7 +223,7 @@ export const contactFromDataInclusion = (courriel?: string, telephone?: string,
? {}
: {
contact: Contact({
...(courriel == null ? {} : { courriel: courriel.split('|').map(Courriel) }),
...(courriel == null ? {} : { courriels: courriel.split('|').map(Courriel) }),
...(telephone == null ? {} : { telephone }),
...(site_web == null ? {} : { site_web: site_web.split('|').map(Url) })
})
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -178,7 +178,7 @@ describe('from schema data inclusion', (): void => {
typologies: Typologies([Typologie.TIERS_LIEUX]),
contact: Contact({
telephone: '+33180059880',
courriel: [Courriel('[email protected]'), Courriel('[email protected]')],
courriels: [Courriel('[email protected]'), Courriel('[email protected]')],
site_web: [Url('https://www.laquincaillerie.tl/'), Url('https://m.facebook.com/laquincaillerienumerique/')]
}),
horaires: 'Mo-Fr 09:00-12:00,14:00-18:30; Sa 08:30-12:00',
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -120,6 +120,7 @@ const LABELS_NATIONAUX_MAP: Map<DispositifProgrammeNational | FormationLabel, st
[FormationLabel.FormeADuplex, 'duplex'],
[FormationLabel.ArniaMednum, 'arnia'],
[FormationLabel.CollectifRessourcesEtActeursReemploi, 'ressources-reemploi'],
[FormationLabel.EtapesNumeriques, 'etapes-numeriques'],
[FormationLabel.FabriquesDeTerritoire, 'fabrique-de-territoire'],
[FormationLabel.LesEclaireurs, 'les-eclaireurs'],
[FormationLabel.MesPapiers, 'mes-papiers'],
Expand Down Expand Up @@ -178,8 +179,8 @@ export const localisationFields = (

export const contactFields = (lieuMediationNumerique: LieuMediationNumerique): SchemaStructureDataInclusionContactFields => ({
...(lieuMediationNumerique.contact?.telephone == null ? {} : { telephone: lieuMediationNumerique.contact.telephone }),
...(lieuMediationNumerique.contact?.courriel != null && lieuMediationNumerique.contact.courriel.length > 0
? courrielIfExist(lieuMediationNumerique.contact.courriel.at(0)?.toString())
...(lieuMediationNumerique.contact?.courriels != null && lieuMediationNumerique.contact.courriels.length > 0
? courrielIfExist(lieuMediationNumerique.contact.courriels.at(0)?.toString())
: {}),
...(lieuMediationNumerique.contact?.site_web != null && lieuMediationNumerique.contact.site_web.length > 0
? siteWebIfExist(lieuMediationNumerique.contact.site_web.at(0)?.toString())
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ describe('to schema data.inclusion', (): void => {
contact: Contact({
site_web: [Url('https://www.asso-gonzalez.net/'), Url('https://www.facebook.com/asso-gonzalez.net/')],
telephone: '0102030405',
courriel: [Courriel('[email protected]'), Courriel('[email protected]')]
courriels: [Courriel('[email protected]'), Courriel('[email protected]')]
}),
horaires: 'Mo-Fr 10:00-20:00 "sur rendez-vous"; PH off',
presentation: {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,20 +55,20 @@ export const typologiesIfAny = (typologies?: string): { typologies?: Typologies

const telephoneIfAny = (telephone?: string): { telephone?: string } => (telephone == null ? {} : { telephone });

const courrielIfAny = (courriel?: string): { courriel?: Courriel[] } =>
courriel == null ? {} : { courriel: listFromString(courriel) };
const courrielsIfAny = (courriels?: string): { courriels?: Courriel[] } =>
courriels == null ? {} : { courriels: listFromString(courriels) };

const siteWebIfAny = (siteWeb?: string): { site_web?: Url[] } => (siteWeb == null ? {} : { site_web: listFromString(siteWeb) });

export const contactIfAny = (schemaLieuMediationNumerique: SchemaLieuMediationNumerique): { contact?: Contact } =>
schemaLieuMediationNumerique.telephone == null &&
schemaLieuMediationNumerique.courriel == null &&
schemaLieuMediationNumerique.courriels == null &&
schemaLieuMediationNumerique.site_web == null
? {}
: {
contact: Contact({
...telephoneIfAny(schemaLieuMediationNumerique.telephone),
...courrielIfAny(schemaLieuMediationNumerique.courriel),
...courrielsIfAny(schemaLieuMediationNumerique.courriels),
...siteWebIfAny(schemaLieuMediationNumerique.site_web)
})
};
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ describe('from schema lieux de mediation numerique', (): void => {
longitude: 5.41423,
typologie: 'TIERS_LIEUX',
telephone: '+33180059880',
courriel: '[email protected]',
courriels: ['[email protected]', '[email protected]'].join('|'),
site_web: 'https://www.laquincaillerie.tl/|https://m.facebook.com/laquincaillerienumerique/',
horaires: 'Mo-Fr 09:00-12:00,14:00-18:30; Sa 08:30-12:00',
presentation_resume:
Expand Down Expand Up @@ -191,7 +191,7 @@ describe('from schema lieux de mediation numerique', (): void => {
typologies: Typologies([Typologie.TIERS_LIEUX]),
contact: Contact({
telephone: '+33180059880',
courriel: [Courriel('[email protected]')],
courriels: [Courriel('contact@laquincaillerie.tl'), Courriel('hello@laquincaillerie.tl')],
site_web: [Url('https://www.laquincaillerie.tl/'), Url('https://m.facebook.com/laquincaillerienumerique/')]
}),
horaires: 'Mo-Fr 09:00-12:00,14:00-18:30; Sa 08:30-12:00',
Expand Down Expand Up @@ -262,7 +262,7 @@ describe('from schema lieux de mediation numerique', (): void => {
longitude: 5.41423,
typologie: 'TIERS_LIEUX',
telephone: '+33180059880',
courriel: '[email protected]',
courriels: ['[email protected]', '[email protected]'].join('|'),
site_web: 'https://www.laquincaillerie.tl/|https://m.facebook.com/laquincaillerienumerique/',
horaires: 'Mo-Fr 09:00-12:00,14:00-18:30; Sa 08:30-12:00',
presentation_resume:
Expand Down Expand Up @@ -333,7 +333,7 @@ describe('from schema lieux de mediation numerique', (): void => {
typologies: Typologies([Typologie.TIERS_LIEUX]),
contact: Contact({
telephone: '+33180059880',
courriel: [Courriel('[email protected]')],
courriels: [Courriel('contact@laquincaillerie.tl'), Courriel('hello@laquincaillerie.tl')],
site_web: [Url('https://www.laquincaillerie.tl/'), Url('https://m.facebook.com/laquincaillerienumerique/')]
}),
horaires: 'Mo-Fr 09:00-12:00,14:00-18:30; Sa 08:30-12:00',
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ export type SchemaLieuMediationNumeriqueLocalisationFields = {

export type SchemaLieuMediationNumeriqueContactFields = {
telephone?: string;
courriel?: string;
courriels?: string;
site_web?: string;
};

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,9 @@ export const localisationFields = (

export const contactFields = (lieuMediationNumerique: LieuMediationNumerique): SchemaLieuMediationNumeriqueContactFields => ({
...(lieuMediationNumerique.contact?.telephone == null ? {} : { telephone: lieuMediationNumerique.contact.telephone }),
...(lieuMediationNumerique.contact?.courriel == null ? {} : { courriel: lieuMediationNumerique.contact.courriel.join('|') }),
...(lieuMediationNumerique.contact?.courriels == null
? {}
: { courriels: lieuMediationNumerique.contact.courriels.join('|') }),
...(lieuMediationNumerique.contact?.site_web == null ? {} : { site_web: lieuMediationNumerique.contact.site_web.join('|') })
});

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ describe('to schema lieux de mediation numerique', (): void => {
typologies: Typologies([Typologie.TIERS_LIEUX, Typologie.ASSO]),
contact: Contact({
telephone: '+33180059880',
courriel: [Courriel('[email protected]')],
courriels: [Courriel('contact@laquincaillerie.tl'), Courriel('hello@laquincaillerie.tl')],
site_web: [Url('https://www.laquincaillerie.tl/'), Url('https://m.facebook.com/laquincaillerienumerique/')]
}),
horaires: 'Mo-Fr 09:00-12:00,14:00-18:30; Sa 08:30-12:00',
Expand Down Expand Up @@ -163,7 +163,7 @@ describe('to schema lieux de mediation numerique', (): void => {
longitude: 5.41423,
typologie: 'TIERS_LIEUX|ASSO',
telephone: '+33180059880',
courriel: '[email protected]',
courriels: 'contact@laquincaillerie.tl|hello@laquincaillerie.tl',
site_web: 'https://www.laquincaillerie.tl/|https://m.facebook.com/laquincaillerienumerique/',
horaires: 'Mo-Fr 09:00-12:00,14:00-18:30; Sa 08:30-12:00',
presentation_resume:
Expand Down

0 comments on commit 7e1c058

Please sign in to comment.