2021-08-05 18:23:19 +02:00
|
|
|
import { freeCSV2HTML } from "../src/freeCSV2HTML";
|
|
|
|
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>";
|
|
|
|
|
|
|
|
beforeEach(function()
|
|
|
|
{
|
|
|
|
converter=new freeCSV2HTML();
|
|
|
|
document.body.insertAdjacentHTML('afterbegin', fixture);
|
|
|
|
});
|
|
|
|
|
|
|
|
afterEach(function()
|
|
|
|
{
|
|
|
|
document.body.removeChild(document.getElementById('fixture'));
|
|
|
|
});
|
|
|
|
|
|
|
|
it("Doit être une instance de freeCSV2HTML", function()
|
|
|
|
{
|
|
|
|
expect(converter).toBeInstanceOf(freeCSV2HTML);
|
|
|
|
});
|
|
|
|
|
|
|
|
describe("Setting freeCSV2HTML", function()
|
|
|
|
{
|
|
|
|
it("Doit générer une erreur s'il n'y a pas d'élément dans la page pour l'id fourni pour recevoir les données.", function()
|
|
|
|
{
|
|
|
|
expect(function() { return converter.datasEltId="dontExistId"; }).toThrowError(errors.elementNotFound+"dontExistId");
|
|
|
|
});
|
|
|
|
|
|
|
|
it("Ne doit pas générer une erreur s'il y a un élément dans la page pour l'id fourni pour recevoir les données.", 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");
|
|
|
|
});
|
|
|
|
|
|
|
|
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()
|
|
|
|
{
|
|
|
|
expect(function() { return converter.datasSelectors=[{ colCSV:2, idElt:"selector1"},{ colCSV:3, idElt:"selector2"}]; }).not.toThrowError();
|
|
|
|
});
|
|
|
|
});
|
|
|
|
});
|