diff --git a/src/errors.js b/src/errors.js index eaadcd8..f861b4c 100644 --- a/src/errors.js +++ b/src/errors.js @@ -1,17 +1,16 @@ module.exports = { - datasNotFound : "Aucune donnée n'a été trouvée.", - elementNotFound : "Aucun élément HTML n'a été trouvé ayant comme \"id\" : ", - needDatasElt: "Merci de fournir un id valide pour l'élément où afficher les données.", - needPagesSelectorElt: "Merci de fournir l'id de l'élément où afficher le sélecteur de pages.", - needPaginationByDefaultBeInOptions: "La valeur de pagination par défaut doit faire partie des options proposées.", - needPaginationOptionsValues: "Vous n'avez fourni aucune options possibles pour la pagination.", - needPositiveInteger: "Merci de fournir un nombre entier supérieur à zéro pour désigner chaque option de pagination.", - needUrl: "Merci de fournir une url valide pour le fichier CSV à parser.", - paginationNeedDatas: "Il ne peut y avoir de pagination, si les données n'ont pas été récupérées.", + converterElementNotFound : "Aucun élément HTML n'a été trouvé ayant comme \"id\" : ", + converterNeedDatasElt: "Merci de fournir un id valide pour l'élément où afficher les données.", + converterRefreshFail: "Le nom des champs et l'élement du DOM receveur sont nécessaires à l'affichage des données.", pagination2HTMLFail : "Toutes les donnée nécessaires à la création des sélecteurs de pagination n'ont pas été fournies.", + paginationNeedByfaultValueBeInOptions: "La valeur de pagination par défaut doit faire partie des options proposées.", + paginationNeedDatas: "Il ne peut y avoir de pagination, si les données n'ont pas été récupérées.", + paginationNeedOptionsValues: "Vous n'avez fourni aucune options possibles pour la pagination.", + paginationNeedPositiveInteger: "Merci de fournir un nombre entier supérieur à zéro pour désigner chaque option de pagination.", + parserDatasNotFound : "Aucune donnée n'a été trouvée.", parserFail: "La lecture des données du fichier a échoué.", - refreshFail: "Le nom des champs et l'élement du DOM receveur sont nécessaires à l'affichage des données.", + parserNeedUrl: "Merci de fournir une url valide pour le fichier à parser.", selector2HTMLFail: "Le création d'un filtre dans le DOM nécessite l'initialisation de l'élément HTML et du numéro du champs à filter.", selectorCheckIsOkFail: "Le test est lancé sur un filtre incorrectement initialisé ou sur un attribut absent de la donnée à tester.", selectorFieldNotFound: "Au moins une des colonnes devant servir à filtrer les données n'existe pas dans le fichier.", diff --git a/src/freeDatas2HTML.ts b/src/freeDatas2HTML.ts index 66ec8c7..e8d16a2 100644 --- a/src/freeDatas2HTML.ts +++ b/src/freeDatas2HTML.ts @@ -47,7 +47,7 @@ export class FreeDatas2HTML { let checkContainerExist=document.getElementById(elt.id); if(checkContainerExist === null) - throw new Error(errors.elementNotFound+elt.id); + throw new Error(errors.converterElementNotFound+elt.id); else { this._datasViewElt.id=elt.id; @@ -59,7 +59,7 @@ export class FreeDatas2HTML set datasSourceUrl(url: string) { if(url.trim().length === 0) - throw new Error(errors.needUrl); + throw new Error(errors.parserNeedUrl); else this._datasSourceUrl=url.trim(); } @@ -124,7 +124,7 @@ export class FreeDatas2HTML }); } else - reject(new Error(errors.needUrl)); + reject(new Error(errors.parserNeedUrl)); }); } @@ -132,14 +132,14 @@ export class FreeDatas2HTML public async run(): Promise { if (this._datasViewElt.eltDOM === undefined) - throw new Error(errors.needDatasElt); + throw new Error(errors.converterNeedDatasElt); if(this._datasSourceUrl === "" ) - throw new Error(errors.needUrl); + throw new Error(errors.parserNeedUrl); await this.parse(); if(this.parseDatas.length === 0 || this.parseMetas!.fields === undefined) // je force avec "!", car l'existence de parseMetas est certaine après parse(). - throw new Error(errors.datasNotFound); + throw new Error(errors.parserDatasNotFound); else if(this.stopIfParseErrors && this.parseErrors.length!==0) console.error(this.parseErrors); else @@ -153,7 +153,7 @@ export class FreeDatas2HTML refreshView() : void { if(this.parseMetas === undefined || this.parseMetas.fields === undefined || this._datasViewElt.eltDOM === undefined) - throw new Error(errors.refreshFail); + throw new Error(errors.converterRefreshFail); this.datasHTML=this.createDatasHTML(this.parseMetas.fields, this.parseDatas); this._datasViewElt.eltDOM.innerHTML=this.datasHTML; // On réactive les éventuels champs de classement diff --git a/src/freeDatas2HTMLPagination.ts b/src/freeDatas2HTMLPagination.ts index fbf45c0..3dc49a9 100644 --- a/src/freeDatas2HTMLPagination.ts +++ b/src/freeDatas2HTMLPagination.ts @@ -27,7 +27,7 @@ export class Pagination implements Paginations { let checkContainerExist=document.getElementById(pagesElt.id); if(checkContainerExist === null) - throw new Error(errors.elementNotFound+pagesElt.id); + throw new Error(errors.converterElementNotFound+pagesElt.id); else { this._converter=converter; @@ -41,7 +41,7 @@ export class Pagination implements Paginations if(value === undefined || !Pagination.isPositiveInteger(value)) throw new Error(errors.needPositiveInteger); if(this.options !== undefined && this.options.values.indexOf(value) === -1) - throw new Error(errors.needPaginationByDefaultBeInOptions); + throw new Error(errors.paginationNeedByfaultValueBeInOptions); this._selectedValue=value; } @@ -56,11 +56,11 @@ export class Pagination implements Paginations { let checkContainerExist=document.getElementById(options.displayElement.id); if(checkContainerExist === null) - throw new Error(errors.elementNotFound+options.displayElement.id); + throw new Error(errors.converterElementNotFound+options.displayElement.id); else options.displayElement.eltDOM=checkContainerExist; if(options.values.length === 0) - throw new Error(errors.needPaginationOptionsValues); + throw new Error(errors.paginationNeedOptionsValues); for(let i in options.values) { if(!Pagination.isPositiveInteger(options.values[i])) diff --git a/src/freeDatas2HTMLSelector.ts b/src/freeDatas2HTMLSelector.ts index c742677..b417dae 100644 --- a/src/freeDatas2HTMLSelector.ts +++ b/src/freeDatas2HTMLSelector.ts @@ -26,7 +26,7 @@ export class Selector implements Selectors { let checkContainerExist=document.getElementById(elt.id); if(checkContainerExist === null) - throw new Error(errors.elementNotFound+elt.id); + throw new Error(errors.converterElementNotFound+elt.id); else { this._datasViewElt.id=elt.id; diff --git a/tests/freeDatas2HTMLSpec.ts b/tests/freeDatas2HTMLSpec.ts index fa31472..319d558 100644 --- a/tests/freeDatas2HTMLSpec.ts +++ b/tests/freeDatas2HTMLSpec.ts @@ -26,7 +26,7 @@ describe("Test du script central de FreeDatas2HTML", () => { it("Doit générer une erreur s'il n'y a pas d'élément dans la page pour l'id fourni pour afficher les données.", () => { - expect(() => { return converter.datasViewElt={ id:"dontExist" }; }).toThrowError(errors.elementNotFound+"dontExist"); + expect(() => { return converter.datasViewElt={ id:"dontExist" }; }).toThrowError(errors.converterElementNotFound+"dontExist"); }); it("Ne doit pas générer une erreur s'il y a bien un élément dans la page pour l'id fourni pour afficher les données.", () => @@ -36,7 +36,7 @@ describe("Test du script central de FreeDatas2HTML", () => it("Doit générer une erreur si l'url fournie pour le fichier de données est vide.", () => { - expect(() => { return converter.datasSourceUrl=" "; }).toThrowError(errors.needUrl); + expect(() => { return converter.datasSourceUrl=" "; }).toThrowError(errors.parserNeedUrl); }); // Fonction spécfique de classement des données : @@ -93,9 +93,9 @@ describe("Test du script central de FreeDatas2HTML", () => it("Doit générer une erreur si au moins un des deux paramètres nécessaires au fonctionnement n'est pas fourni.", async () => { - await expectAsync(converter.run()).toBeRejectedWith(new Error(errors.needDatasElt)); + await expectAsync(converter.run()).toBeRejectedWith(new Error(errors.converterNeedDatasElt)); converter.datasViewElt={ id:"datas" }; - await expectAsync(converter.run()).toBeRejectedWith(new Error(errors.needUrl)); + await expectAsync(converter.run()).toBeRejectedWith(new Error(errors.parserNeedUrl)); }); it("Ne doit pas générer d'erreur si les deux paramètres fournis sont ok.", async () => @@ -109,7 +109,7 @@ describe("Test du script central de FreeDatas2HTML", () => { converter.datasViewElt={ id:"datas" }; converter.datasSourceUrl="http://localhost:9876/datas/nodatas.csv"; - await expectAsync(converter.run()).toBeRejectedWith(new Error(errors.datasNotFound)); + await expectAsync(converter.run()).toBeRejectedWith(new Error(errors.parserDatasNotFound)); let txtDatasViewsElt=document.getElementById("datas").innerHTML; expect(txtDatasViewsElt).toEqual(""); }); diff --git a/tests/paginationSpec.ts b/tests/paginationSpec.ts index 5ac4dcd..d65f6f7 100644 --- a/tests/paginationSpec.ts +++ b/tests/paginationSpec.ts @@ -41,7 +41,7 @@ describe("Test de la pagination.", () => it("Doit générer une erreur si initialisé en fournissant l'id d'un élément n'existant pas pour recevoir la liste des pages.", () => { - expect(() => { return new Pagination(converter, { id:"dontExist" }); }).toThrowError(errors.elementNotFound+"dontExist"); + expect(() => { return new Pagination(converter, { id:"dontExist" }); }).toThrowError(errors.converterElementNotFound+"dontExist"); }); it("Ne doit pas générer d'erreur si initialisé correctement", () => @@ -51,12 +51,12 @@ describe("Test de la pagination.", () => it("Doit générer une erreur si l'id fourni pour l'élément devant recevoir le sélecteur de pagination n'existe pas dans le DOM.", () => { - expect(() => { return pagination.options={ displayElement: { id:"dontExist" }, values: [10,20] }; }).toThrowError(errors.elementNotFound+"dontExist"); + expect(() => { return pagination.options={ displayElement: { id:"dontExist" }, values: [10,20] }; }).toThrowError(errors.converterElementNotFound+"dontExist"); }); it("Doit générer une erreur si les options de pagination sont initialisées avec un tableau de valeurs vide.", () => { - expect(() => { return pagination.options={ displayElement: { id:"paginationOptions" }, values: [] }; }).toThrowError(errors.needPaginationOptionsValues); + expect(() => { return pagination.options={ displayElement: { id:"paginationOptions" }, values: [] }; }).toThrowError(errors.paginationNeedOptionsValues); }); it("Doit générer une erreur si au moins une des options de pagination fournies n'est pas un entier positif.", () => @@ -79,7 +79,7 @@ describe("Test de la pagination.", () => it("Doit générer une erreur si la Pagination par défaut ne fait pas partie des valeurs proposées en option.", () => { pagination.options={ displayElement: { id:"paginationOptions" }, values: [10,20,50] }; - expect(() => { return pagination.selectedValue=15; }).toThrowError(errors.needPaginationByDefaultBeInOptions); + expect(() => { return pagination.selectedValue=15; }).toThrowError(errors.paginationNeedByfaultValueBeInOptions); }); it("Doit accepter une pagination par défaut correcte, avec ou sans options proposées.", () => diff --git a/tests/selectorSpec.ts b/tests/selectorSpec.ts index 18f08f9..3d77d91 100644 --- a/tests/selectorSpec.ts +++ b/tests/selectorSpec.ts @@ -38,7 +38,7 @@ describe("Test des filtres de données", () => it("Doit générer une erreur s'il n'y a aucun élément trouvé dans le DOM pour l'id fourni.", () => { - expect(() => { return converter.datasViewElt={ id:"dontExist" }; }).toThrowError(errors.elementNotFound+"dontExist"); + expect(() => { return converter.datasViewElt={ id:"dontExist" }; }).toThrowError(errors.converterElementNotFound+"dontExist"); }); it("Si un élément est trouvé dans le DOM pour l'id fourni, doit l'accepter.", () =>