JustAnotherDnDGame 0.1.0
Jeu de rôle tactique au d20, vue de dessus, en C++/Qt
Loading...
Searching...
No Matches
test_editor_status.cpp File Reference

Tests unitaires du choix de contenu de la barre d'état de l'éditeur (LOT-57 TACHE-01, EX-IHM-060). More...

#include <filesystem>
#include <gtest/gtest.h>
#include "HMI/Editor/EditorStatus.h"
#include "HMI/Localization/Localization.h"

Functions

 TEST (EditorStatusTest, AucunNiveauOuvertNAfficheRien)
 Un contexte sans niveau ouvert n'affiche aucune zone ni aide.
 TEST (EditorStatusTest, AucuneCaseSurvoleeLaisseLaZoneVide)
 Aucune case survolee n'affiche une zone de coordonnees vide, sans casser les autres zones.
 TEST (EditorStatusTest, IndicateurDeModificationSuitLEtatDirty)
 L'indicateur de modification est present apres une edition, absent apres enregistrement.
 TEST (EditorStatusTest, ZoneDeCadrageAfficheLeModeCourant)
 La zone de cadrage affiche le mode courant, traduit – présente en permanence (EX-EDIT-028), jamais seulement au survol ou sur demande.
 TEST (EditorStatusTest, AideChangeAvecLOutilActif)
 L'aide affichee change avec l'outil actif.
 TEST (EditorStatusTest, MemeContexteProduitLaMemeAide)
 La restauration apres un message transitoire redonne la meme aide, pour le meme outil.
 TEST (EditorStatusTest, ContextePixelEditProduitLesZonesEtLAideAttendues)
 Le contexte d'atelier pixel art produit les six zones attendues (asset, modifie, outil, pixel survole, zoom, couleur) et l'aide de l'outil de canevas actif – sans toucher au contexte de niveau (mutuellement exclusifs).
 TEST (EditorStatusTest, ModeContraintFigureDansLaZoneCouleur)
 Le mode contraint figure dans la zone couleur de la barre d'état, distinct du mode libre.
 TEST (EditorStatusTest, AucunAssetOuvertLaisseLaZoneVide)
 Aucun asset ouvert laisse la zone d'asset vide, sans libellé de remplacement, exactement comme l'absence de niveau ouvert.
 TEST (EditorStatusTest, AideDeLAtelierChangeAvecLOutilActif)
 L'aide contextuelle de l'atelier change avec l'outil de canevas actif.
 TEST (EditorStatusTest, ClesDeTraductionExistentDansLesDeuxCatalogues)
 Chaque cle de traduction utilisee par la barre d'etat existe, traduite, dans les deux catalogues livres (francais et anglais).

Detailed Description

Tests unitaires du choix de contenu de la barre d'état de l'éditeur (LOT-57 TACHE-01, EX-IHM-060).

Fonction pure, sans Qt/GPU.

Function Documentation

◆ TEST() [1/11]

TEST ( EditorStatusTest ,
AideChangeAvecLOutilActif  )

L'aide affichee change avec l'outil actif.

Cas de test : L'aide contextuelle change avec l'outil actif.
Categorie : Unitaire · Barre d'etat de l'editeur
Criticite : Critique
Etapes :
1. Calculer les lignes avec l'outil Pinceau, puis Lien.
2. Comparer l'aide.
Resultat attendu : L'aide differe entre les deux outils et correspond a la cle attendue.

◆ TEST() [2/11]

TEST ( EditorStatusTest ,
AideDeLAtelierChangeAvecLOutilActif  )

L'aide contextuelle de l'atelier change avec l'outil de canevas actif.

Cas de test : L'aide de l'atelier change avec l'outil de canevas actif.
Categorie : Unitaire · Barre d'etat de l'editeur
Criticite : Majeur
Etapes :
1. Calculer les lignes avec l'outil Gomme, puis Pipette.
2. Comparer l'aide.
Resultat attendu : L'aide differe entre les deux outils et correspond a la cle attendue.

◆ TEST() [3/11]

TEST ( EditorStatusTest ,
AucunAssetOuvertLaisseLaZoneVide  )

Aucun asset ouvert laisse la zone d'asset vide, sans libellé de remplacement, exactement comme l'absence de niveau ouvert.

Cas de test : Aucun asset ouvert laisse la zone d'asset vide.
Categorie : Unitaire · Barre d'etat de l'editeur
Criticite : Majeur
Etapes :
1. Construire un contexte d'atelier sans nom d'asset.
2. Calculer les lignes.
Resultat attendu : La zone d'asset (index 0) est vide ; les autres zones restent renseignees.

◆ TEST() [4/11]

TEST ( EditorStatusTest ,
AucuneCaseSurvoleeLaisseLaZoneVide  )

Aucune case survolee n'affiche une zone de coordonnees vide, sans casser les autres zones.

Cas de test : Aucune case survolee laisse la zone de coordonnees vide.
Categorie : Unitaire · Barre d'etat de l'editeur
Criticite : Majeur
Etapes :
1. Construire un niveau sans case survolee.
2. Calculer les lignes.
Resultat attendu : La zone de coordonnees (index 3) est vide ; les autres zones sont renseignees.

◆ TEST() [5/11]

TEST ( EditorStatusTest ,
AucunNiveauOuvertNAfficheRien  )

Un contexte sans niveau ouvert n'affiche aucune zone ni aide.

Cas de test : Aucun niveau ouvert n'affiche aucune zone ni aide.
Categorie : Unitaire · Barre d'etat de l'editeur
Criticite : Critique
Etapes :
1. Construire un contexte sans niveau.
2. Calculer les lignes.
Resultat attendu : Les sept zones permanentes et l'aide sont vides.

◆ TEST() [6/11]

TEST ( EditorStatusTest ,
ClesDeTraductionExistentDansLesDeuxCatalogues  )

Chaque cle de traduction utilisee par la barre d'etat existe, traduite, dans les deux catalogues livres (francais et anglais).

Cas de test : Les cles de traduction de la barre d'etat existent dans les deux catalogues.
Categorie : Unitaire · Barre d'etat de l'editeur
Criticite : Majeur
Etapes :
1. Charger fr.lang puis en.lang depuis les catalogues livres.
2. Resoudre chaque cle utilisee.
Resultat attendu : Chaque cle resout vers un texte traduit, distinct de la cle elle-meme.

◆ TEST() [7/11]

TEST ( EditorStatusTest ,
ContextePixelEditProduitLesZonesEtLAideAttendues  )

Le contexte d'atelier pixel art produit les six zones attendues (asset, modifie, outil, pixel survole, zoom, couleur) et l'aide de l'outil de canevas actif – sans toucher au contexte de niveau (mutuellement exclusifs).

Cas de test : Le contexte d'atelier pixel art produit les zones et l'aide attendues.
Categorie : Unitaire · Barre d'etat de l'editeur
Criticite : Critique
Etapes :
1. Construire un contexte d'edition d'asset avec un pixel survole.
2. Calculer les lignes.
Resultat attendu : Les six zones portent les valeurs attendues et l'aide correspond a l'outil actif.

◆ TEST() [8/11]

TEST ( EditorStatusTest ,
IndicateurDeModificationSuitLEtatDirty  )

L'indicateur de modification est present apres une edition, absent apres enregistrement.

Cas de test : L'indicateur de modification suit l'etat "dirty" du niveau.
Categorie : Unitaire · Barre d'etat de l'editeur
Criticite : Critique
Etapes :
1. Calculer les lignes avec dirty=true, puis dirty=false.
2. Comparer la zone d'indicateur.
Resultat attendu : La zone est non vide avec dirty=true, vide avec dirty=false.

◆ TEST() [9/11]

TEST ( EditorStatusTest ,
MemeContexteProduitLaMemeAide  )

La restauration apres un message transitoire redonne la meme aide, pour le meme outil.

editorStatusLines est PURE : restaurer la barre d'etat consiste donc simplement a la rappeler avec le meme contexte, sans avoir a memoriser ce qui y etait affiche. Cas de test : La decision est deterministe : meme contexte, meme resultat.
Categorie : Unitaire · Barre d'etat de l'editeur
Criticite : Majeur
Etapes :
1. Calculer deux fois les lignes pour le meme contexte.
2. Comparer.
Resultat attendu : Les deux resultats sont identiques.

◆ TEST() [10/11]

TEST ( EditorStatusTest ,
ModeContraintFigureDansLaZoneCouleur  )

Le mode contraint figure dans la zone couleur de la barre d'état, distinct du mode libre.

Cas de test : Le mode contraint figure dans la zone couleur.
Categorie : Unitaire · Barre d'etat de l'editeur
Criticite : Majeur
Etapes :
1. Calculer les lignes avec le mode contraint actif, puis inactif.
2. Comparer la zone couleur (index 5).
Resultat attendu : La zone differe entre les deux modes et correspond a la cle attendue.

◆ TEST() [11/11]

TEST ( EditorStatusTest ,
ZoneDeCadrageAfficheLeModeCourant  )

La zone de cadrage affiche le mode courant, traduit – présente en permanence (EX-EDIT-028), jamais seulement au survol ou sur demande.

Cas de test : La zone de cadrage affiche le mode courant, traduit.
Categorie : Unitaire · Barre d'etat de l'editeur
Criticite : Majeur
Etapes :
1. Calculer les lignes pour un niveau en mode par salle, puis suivi.
2. Comparer la zone de cadrage (index 6).
Resultat attendu : La zone reflète le mode courant, traduit, pour chacun des deux modes.