Skip to content
Snippets Groups Projects
Commit 0f910938 authored by Jérémie BRISON's avatar Jérémie BRISON
Browse files

fix(structuredetail) : set Unit test

parent e8837b4f
No related branches found
No related tags found
2 merge requests!31Recette,!19Test dev
import { HttpClientTestingModule } from '@angular/common/http/testing';
import { ComponentFixture, TestBed } from '@angular/core/testing';
import { Structure } from '../../../models/structure.model';
import { AccessModality } from '../../enum/access-modality.enum';
import { Category } from '../../models/category.model';
import { Module } from '../../models/module.model';
import { StructureDetailsComponent } from './structure-details.component';
describe('StructureDetailsComponent', () => {
......@@ -18,9 +21,54 @@ describe('StructureDetailsComponent', () => {
fixture = TestBed.createComponent(StructureDetailsComponent);
component = fixture.componentInstance;
fixture.detectChanges();
let structure: Structure = new Structure();
structure.lesCompetencesDeBase = ['123', '234', '817'];
component.structure = structure;
});
it('should create', () => {
expect(component).toBeTruthy();
});
it('should emit close action', () => {
spyOn(component.closeDetails, 'emit');
component.close();
expect(component.closeDetails.emit).toHaveBeenCalled();
expect(component.closeDetails.emit).toHaveBeenCalledWith(true);
});
it('should return icon name with a string input', () => {
const iconNameGroup = component.getAccessIcon(AccessModality.free);
const iconNameCalendar = component.getAccessIcon(AccessModality.meeting);
const iconNameTel = component.getAccessIcon(AccessModality.numeric);
expect(iconNameGroup).toEqual('group');
expect(iconNameCalendar).toEqual('calendar');
expect(iconNameTel).toEqual('tel');
});
it('should update array with right modules', () => {
let baseSkillssReferentiel = new Category();
let accessRightsReferentiel = new Category();
const mo1 = new Module('132', 'Uniquement sur RDV');
const mo2 = new Module('145', 'Accès libre');
const mo3 = new Module('112', 'Téléphone / Visio');
const arrayModule: Module[] = [mo1, mo2, mo3];
const m1 = new Module('260', 'm1');
const m2 = new Module('259', 'm2');
const m3 = new Module('261', 'm3');
const m4 = new Module('249', 'm4');
const m5 = new Module('222', 'm5');
const arrayModuleBase: Module[] = [m1, m2, m3, m4, m5];
baseSkillssReferentiel.name = 'categ2';
baseSkillssReferentiel.modules = arrayModuleBase;
component.baseSkillssReferentiel = baseSkillssReferentiel;
accessRightsReferentiel.name = 'categ1';
accessRightsReferentiel.modules = arrayModule;
component.accessRightsReferentiel = accessRightsReferentiel;
component.structure.lesCompetencesDeBase = ['260', '261'];
component.structure.accesAuxDroits = ['145', '112'];
component.setServiceCategories();
expect(component.baseSkills).toEqual([m1, m3]);
expect(component.accessRights).toEqual([mo2, mo3]);
});
});
......@@ -53,15 +53,13 @@ export class StructureDetailsComponent implements OnInit {
}
public setServiceCategories(): void {
this.baseSkills = this.toNumbers(this.structure.lesCompetencesDeBase).map((skill) =>
this.baseSkills = this.structure.lesCompetencesDeBase.map((skill) =>
_.find(this.baseSkillssReferentiel.modules, { id: skill })
);
this.accessRights = this.toNumbers(this.structure.accesAuxDroits).map((rights) =>
this.accessRights = this.structure.accesAuxDroits.map((rights) =>
_.find(this.accessRightsReferentiel.modules, { id: rights })
);
}
public keepOriginalOrder = (a, b) => a.key;
public toNumbers = (arr) => arr.map(Number);
}
......@@ -6,7 +6,10 @@ export class Category {
constructor(obj?: any) {
Object.assign(this, obj, {
modules: obj && obj.modules ? obj.modules.map((module) => new Module(module.id, module.text)) : null,
modules:
obj && obj.modules
? obj.modules.map((module) => new Module(module.display_id ? module.display_id : module.id, module.text))
: null,
});
}
......
......@@ -36,8 +36,6 @@ export class SearchService {
public setCountModules(category: Category, structureCountTab: StructureCounter[]): Category {
category.modules.forEach((m: Module) => {
for (let i = 0; i < structureCountTab.length; i++) {
// Force type
m.id = m.id.toString();
if (structureCountTab[i].id === m.id) {
m.count = structureCountTab[i].count;
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment