Ajout et test des setters contrôlant l'existence des éléménts HTML reçus en paramètres.

This commit is contained in:
Fabrice PENHOËT 2021-08-06 11:41:28 +02:00
parent 4c6bf36038
commit 0feb525725
2 changed files with 16 additions and 13 deletions

View File

@ -15,7 +15,11 @@ export class freeCSV2HTML
set datasEltId(id: string)
{
this._datasEltId=id;
let checkContainerExist=document.getElementById(id);
if(checkContainerExist === null)
throw new Error(errors.elementNotFound+id);
else
this._datasEltId=id;
}
set datasUrl(url: string)
@ -25,6 +29,15 @@ export class freeCSV2HTML
set datasSelectors(selectors: selectors[])
{
let checkContainerExist: HTMLElement;
for(let i = 0; i < selectors.length; i++)
{
checkContainerExist=document.getElementById(selectors[i].idElt);
if(checkContainerExist === null)
throw new Error(errors.elementNotFound+selectors[i].idElt);
else
selectors[i].eltDOM=checkContainerExist;
}
this._datasSelectors=selectors;
}

View File

@ -4,7 +4,7 @@ const errors=require("../src/errors.js");
describe("freeCSV2HTML", function()
{
let converter: freeCSV2HTML;
const fixture="<div id='fixture'><div id='selectro1'></div><div id='selector2'></div><div id='datas'></div></div>";
const fixture="<div id='fixture'><div id='selector1'></div><div id='selector2'></div><div id='datas'></div></div>";
beforeEach(function()
{
@ -34,19 +34,9 @@ describe("freeCSV2HTML", function()
expect(function() { return converter.datasEltId="datas"; }).not.toThrowError();
});
it("Doit générer une erreur si l'url fournie pour le fichier csv n'est pas valide.", function()
{
expect(function() { return converter.datasUrl="http:/localhost:8080/datas/elements-chimiques.csv"; }).toThrowError(errors.urlNotValid);
});
it("Ne doit pas générer une erreur si l'url fournie pour le fichier csv est pas valide.", function()
{
expect(function() { return converter.datasUrl="http://localhost:8080/datas/elements-chimiques.csv"; }).not.toThrowError();
});
it("Doit générer une erreur s'il n'y a pas d'éléments dans la page pour les ids fournis pour recevoir les sélecteurs.", function()
{
expect(function() { return converter.datasSelectors=[{ colCSV:2, idElt:"selector2"},{ colCSV:3, idElt:"selector3"}]; }).toThrowError(errors.elementNotFound+"select3");
expect(function() { return converter.datasSelectors=[{ colCSV:2, idElt:"selector2"},{ colCSV:3, idElt:"selector3"}]; }).toThrowError(errors.elementNotFound+"selector3");
});
it("Ne doit pas générer une erreur s'il y a bien un élément dans la page pour chaque id fourni pour recevoir un sélecteur.", function()