Mise à jour du nom d'un attribut.

This commit is contained in:
Fabrice PENHOËT 2021-08-31 16:22:28 +02:00
parent ef55d87cb4
commit 55f9e8ad91
4 changed files with 14 additions and 14 deletions

View File

@ -6,7 +6,7 @@ const initialise = async () =>
{
let converter=new freeDatas2HTML();
converter.datasViewElt={ id:"datas" };
converter.datasSelectors=[{ datasFielNb:3, id:"filtre1"},{ datasFielNb:4, id:"filtre2"}];
converter.datasSelectors=[{ datasFieldNb:3, id:"filtre1"},{ datasFieldNb:4, id:"filtre2"}];
converter.datasSourceUrl="http://localhost:8080/datas/elements-chimiques.csv";
await converter.run();
}

View File

@ -45,7 +45,7 @@ export class freeDatas2HTML
checkContainerExist=document.getElementById(selectionElts[i].id);
if(checkContainerExist === null)
console.error(errors.elementNotFound+selectionElts[i].id);
else if(Number.isInteger( selectionElts[i].datasFielNb) === false || selectionElts[i].datasFielNb < 0)
else if(Number.isInteger( selectionElts[i].datasFieldNb) === false || selectionElts[i].datasFieldNb < 0)
console.error(errors.needNaturalNumber);
else
{
@ -126,11 +126,11 @@ export class freeDatas2HTML
let selectorsHTML : string [] = [];
for(let i in this._datasSelectors)
{
if(this._datasSelectors[i].datasFielNb > (this.parseMeta!.fields.length-1))
if(this._datasSelectors[i].datasFieldNb > (this.parseMeta!.fields.length-1))
throw new Error(errors.selectorFieldNotFound);
else
{
let values=[], colName=this.parseMeta!.fields[this._datasSelectors[i].datasFielNb];
let values=[], colName=this.parseMeta!.fields[this._datasSelectors[i].datasFieldNb];
for (let row in this.parseDatas)
{
if(values.indexOf(this.parseDatas[row][colName].trim()) === -1)

View File

@ -5,7 +5,7 @@ export interface domElement
}
export interface selectors extends domElement
{
datasFielNb: number;
datasFieldNb: number;
name?: string;
values? : string[];
}

View File

@ -36,24 +36,24 @@ describe("freeDatas2HTML", () =>
it("Ne doit accepter que les sélecteurs pour lesquels un élément a été trouvé dans la page pour l'id fourni.", () =>
{
converter.datasSelectors=[{ datasFielNb:2, id:"selector2" },{ datasFielNb:3, id:"selector3" }];
converter.datasSelectors=[{ datasFieldNb:2, id:"selector2" },{ datasFieldNb:3, id:"selector3" }];
expect(converter.datasSelectors.length).toEqual(1);
expect(converter.datasSelectors[0].id).toEqual("selector2");
});
it("Ne doit accepter que les sélecteurs pour lesquels les numéros de colonne fourrnis sont des nombres naturels.", () =>
{
converter.datasSelectors=[{ datasFielNb:2.3, id:"selector1" },{ datasFielNb:3, id:"selector2" }];
converter.datasSelectors=[{ datasFieldNb:2.3, id:"selector1" },{ datasFieldNb:3, id:"selector2" }];
expect(converter.datasSelectors.length).toEqual(1);
expect(converter.datasSelectors[0].id).toEqual("selector2");
converter.datasSelectors=[{ datasFielNb:2, id:"selector1" },{ datasFielNb:-1, id:"selector2" }];
converter.datasSelectors=[{ datasFieldNb:2, id:"selector1" },{ datasFieldNb:-1, id:"selector2" }];
expect(converter.datasSelectors.length).toEqual(1);
expect(converter.datasSelectors[0].id).toEqual("selector1");
});
it("Doit accepter tous les sélecteurs si leurs informations sont valides.", () =>
{
converter.datasSelectors=[{ datasFielNb:0, id:"selector1" },{ datasFielNb:3, id:"selector2" }];
converter.datasSelectors=[{ datasFieldNb:0, id:"selector1" },{ datasFieldNb:3, id:"selector2" }];
expect(converter.datasSelectors.length).toEqual(2);
});
@ -158,19 +158,19 @@ describe("freeDatas2HTML", () =>
it("Doit générer une erreur si au moins un des numéros de colonne fournis pour les sélecteurs ne correspond pas à une des colonne du fichier.", async () =>
{
converter.datasSelectors=[{ datasFielNb:0, id:"selector1"},{ datasFielNb:5, id:"selector2"}];
converter.datasSelectors=[{ datasFieldNb:0, id:"selector1"},{ datasFieldNb:5, id:"selector2"}];
await expectAsync(converter.run()).toBeRejectedWith(new Error(errors.selectorFieldNotFound));
});
it("Ne doit pas pas générer d'erreur si tous les numéros de colonne des sélecteurs correspondent pas à une des colonne du fichier.", async () =>
{
converter.datasSelectors=[{ datasFielNb:3, id:"selector1"},{ datasFielNb:4, id:"selector2"}];
converter.datasSelectors=[{ datasFieldNb:3, id:"selector1"},{ datasFieldNb:4, id:"selector2"}];
await expectAsync(converter.run()).not.toBeRejected();
});
it("Pour chaque sélecteur demandé, doit générer un élement <select> listant les valeurs distinctes du fichier, classées par ordre alphabétique.", async () =>
{
converter.datasSelectors=[{ datasFielNb:3, id:"selector1"},{ datasFielNb:4, id:"selector2"}];
converter.datasSelectors=[{ datasFieldNb:3, id:"selector1"},{ datasFieldNb:4, id:"selector2"}];
await converter.run();
expect(document.getElementById("selector1").innerHTML).toEqual(fixtures.selector1HTML);
expect(document.getElementById("selector2").innerHTML).toEqual(fixtures.selector2HTML);
@ -178,7 +178,7 @@ describe("freeDatas2HTML", () =>
it("Le choix d'un option dans un des sélecteurs doit modifier le contenu du tableau pour ne garder que les données correspondantes ou les afficher toutes si sélection 0.", async () =>
{
converter.datasSelectors=[{ datasFielNb:3, id:"selector1"},{ datasFielNb:4, id:"selector2"}];
converter.datasSelectors=[{ datasFieldNb:3, id:"selector1"},{ datasFieldNb:4, id:"selector2"}];
await converter.run();
let selectElement = document.getElementById("freeDatas2HTMLSelector0") as HTMLInputElement;
@ -195,7 +195,7 @@ describe("freeDatas2HTML", () =>
it("Si plusieurs sélecteurs sont utilisés, seules les données correspondant aux différents choix doivent être affichées. Il peut n'y avoir aucun résultat.", async () =>
{
converter.datasSelectors=[{ datasFielNb:3, id:"selector1"},{ datasFielNb:4, id:"selector2"}];
converter.datasSelectors=[{ datasFieldNb:3, id:"selector1"},{ datasFieldNb:4, id:"selector2"}];
await converter.run();
let selectElement = document.getElementById("freeDatas2HTMLSelector0") as HTMLInputElement;