Debug pagination : remise à zéro valeur sélectionnée après chaque actualisation.

This commit is contained in:
Fabrice PENHOËT 2021-10-20 12:55:23 +02:00
parent 5d71a3995b
commit 48fc8580c7
3 changed files with 10 additions and 17 deletions

View File

@ -1,6 +1,6 @@
{ {
"name": "freedatas2html", "name": "freedatas2html",
"version": "0.8.6", "version": "0.8.7",
"description": "Conversion and display of data in different formats (CSV, JSON, HTML) with the possibility of filtering, classifying and paginating the results.", "description": "Conversion and display of data in different formats (CSV, JSON, HTML) with the possibility of filtering, classifying and paginating the results.",
"main": "index.js", "main": "index.js",
"scripts": { "scripts": {

View File

@ -132,12 +132,9 @@ export class Pagination implements Paginations
this.pages.displayElement.eltDOM!.innerHTML=selectorsHTML; this.pages.displayElement.eltDOM!.innerHTML=selectorsHTML;
let selectElement=document.getElementById("freeDatas2HTMLPagesSelector") as HTMLInputElement; let selectElement=document.getElementById("freeDatas2HTMLPagesSelector") as HTMLInputElement;
// Réinitialisé, car dans le cas d'un réaffichage, les données et leur nombre peuvent changer.
this.pages.selectedValue=1;
if(this.pages.selectedValue !== undefined)
selectElement.value=""+this.pages.selectedValue;
else
this.pages.selectedValue=1;
let pagination=this; let pagination=this;
selectElement.addEventListener("change", function(e) selectElement.addEventListener("change", function(e)
{ {

View File

@ -170,20 +170,16 @@ describe("Test de la pagination.", () =>
selectElement=document.getElementById("pages").innerHTML; selectElement=document.getElementById("pages").innerHTML;
expect(selectElement).toEqual(fixtures.selectorForManyPages); expect(selectElement).toEqual(fixtures.selectorForManyPages);
}); });
it("Si une page a précédément été sélectionnée, elle doit être gardée.", () => it("Après chaque actualisation de la liste de pages, la valeur sélectionnée est remise à 0.", () =>
{ {
pagination.pages2HTML(11);
let selectElement=document.getElementById("freeDatas2HTMLPagesSelector") as HTMLInputElement;
expect(pagination.pages.selectedValue).toEqual(1);
pagination.pages.selectedValue=2; pagination.pages.selectedValue=2;
pagination.pages2HTML(11); pagination.pages2HTML(11);
const selectElement=document.getElementById("freeDatas2HTMLPagesSelector") as HTMLInputElement; selectElement=document.getElementById("freeDatas2HTMLPagesSelector") as HTMLInputElement;
expect(selectElement.value).toEqual("2"); expect(pagination.pages.selectedValue).toEqual(1);
});
it("S'il n'a pu eu de page précédément sélectionnée, c'est la première qui est enregistrée.", () =>
{
pagination.pages2HTML(11);
const selectElement=document.getElementById("freeDatas2HTMLPagesSelector") as HTMLInputElement;
expect(pagination.pages.selectedValue).toEqual(1);
}); });
it("La manipulation du sélecteur de pages doit enregistrer la valeur sélectionnée et appeler la fonction actualisant l'affichage.", () => it("La manipulation du sélecteur de pages doit enregistrer la valeur sélectionnée et appeler la fonction actualisant l'affichage.", () =>