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

Tests unitaires de la logique du panneau « Textures » (LOT-42 TACHE-04). More...

#include <algorithm>
#include <filesystem>
#include <fstream>
#include <set>
#include <string>
#include <vector>
#include <gtest/gtest.h>
#include "Core/Levels/TileType.h"
#include "HMI/Editor/SkinAssignments.h"
#include "HMI/Editor/TaxonomyLabels.h"
#include "HMI/Editor/TileTaxonomy.h"
#include "HMI/Graphics/SkinCatalog.h"
#include "HMI/Localization/Localization.h"

Functions

 TEST (SkinAssignmentsTest, ChaqueTypeApparaitUneFois)
 Chaque type peignable apparait exactement une fois dans le panneau.
 TEST (SkinAssignmentsTest, LignesRefletentLAssignation)
 Les lignes refletent l'assignation courante du jeu consulte.
 TEST (SkinAssignmentsTest, SectionsSuiventLaPalette)
 Les sections suivent l'organisation de la palette.
 TEST (SkinAssignmentsTest, AssignationPuisRetraitDepuisLePanneau)
 Assigner puis retirer un skin depuis le panneau modifie le catalogue.
 TEST (SkinAssignmentsTest, JeuNonPreciseViseLeDefaut)
 Un jeu non precise vise le jeu par defaut.
 TEST (SkinAssignmentsTest, BalayageNeRetientQueLesImages)
 Le balayage ne retient que les images, triees.
 TEST (SkinAssignmentsTest, DossierAbsentListeVide)
 Un dossier de skins absent donne une liste vide.
 TEST (SkinAssignmentsTest, LibellesTaxonomieTraduitsDansLesDeuxLangues)
 Chaque libelle de la taxonomie est traduit dans les deux catalogues livres.
 TEST (SkinAssignmentsTest, LibellesDuPanneauTraduits)
 Les libelles du panneau Textures sont traduits dans les deux catalogues.

Detailed Description

Tests unitaires de la logique du panneau « Textures » (LOT-42 TACHE-04).

Function Documentation

◆ TEST() [1/9]

TEST ( SkinAssignmentsTest ,
AssignationPuisRetraitDepuisLePanneau  )

Assigner puis retirer un skin depuis le panneau modifie le catalogue.

Cas de test : Assigner puis retirer un skin depuis le panneau modifie le catalogue.
Categorie : Unitaire · Panneau Textures
Criticite : Critique
Etapes :
1. Appliquer une assignation a un type non skinne, puis relire les lignes.

  1. Appliquer une assignation vide au meme type, puis relire.
    Resultat attendu : La premiere renseigne le fichier ; la seconde le retire entierement.

◆ TEST() [2/9]

TEST ( SkinAssignmentsTest ,
BalayageNeRetientQueLesImages  )

Le balayage ne retient que les images, triees.

Cas de test : Le balayage du dossier de skins ne retient que les images, triees.
Categorie : Unitaire · Panneau Textures
Criticite : Majeur
Etapes :
1. Creer un dossier contenant deux PNG, un fichier texte et un README.
Resultat attendu : Seuls les deux PNG sont listes, par ordre alphabetique.

◆ TEST() [3/9]

TEST ( SkinAssignmentsTest ,
ChaqueTypeApparaitUneFois  )

Chaque type peignable apparait exactement une fois dans le panneau.

Cas de test : Chaque type de tuile peignable apparait exactement une fois dans le panneau.
Categorie : Unitaire · Panneau Textures
Criticite : Critique
Etapes :
1. Construire les lignes du panneau pour un catalogue quelconque.

  1. Collecter les types de toutes les lignes.
    Resultat attendu : Chaque type de la taxonomie y figure une fois, sauf la case vide qui en est exclue.

◆ TEST() [4/9]

TEST ( SkinAssignmentsTest ,
DossierAbsentListeVide  )

Un dossier de skins absent donne une liste vide.

Cas de test : Un dossier de skins absent donne une liste vide, sans erreur.
Categorie : Unitaire · Panneau Textures
Criticite : Majeur
Etapes :
1. Balayer un chemin qui n'existe pas.
Resultat attendu : La liste est vide, sans exception.

◆ TEST() [5/9]

TEST ( SkinAssignmentsTest ,
JeuNonPreciseViseLeDefaut  )

Un jeu non precise vise le jeu par defaut.

Cas de test : Une assignation sans jeu precise vise le jeu par defaut.
Categorie : Unitaire · Panneau Textures
Criticite : Majeur
Etapes :
1. Appliquer une assignation en passant un nom de jeu vide.
Resultat attendu : Elle est enregistree dans le jeu par defaut du catalogue.

◆ TEST() [6/9]

TEST ( SkinAssignmentsTest ,
LibellesDuPanneauTraduits  )

Les libelles du panneau Textures sont traduits dans les deux catalogues.

Cas de test : Les libelles propres au panneau Textures existent dans les deux catalogues.
Categorie : Unitaire · Panneau Textures
Criticite : Critique
Etapes :
1. Pour chaque cle utilisee par le panneau, la resoudre en francais puis en anglais.
Resultat attendu : Chaque cle est traduite dans les deux langues.

◆ TEST() [7/9]

TEST ( SkinAssignmentsTest ,
LibellesTaxonomieTraduitsDansLesDeuxLangues  )

Chaque libelle de la taxonomie est traduit dans les deux catalogues livres.

Cas de test : Chaque libelle de la taxonomie a une traduction dans les deux catalogues.
Categorie : Unitaire · Panneau Textures
Criticite : Critique
Etapes :
1. Pour chaque libelle de la taxonomie, obtenir sa cle de traduction.

  1. Verifier que la cle est resolue en francais puis en anglais.
    Resultat attendu : Aucune cle ne reste non traduite dans l'une des deux langues.

◆ TEST() [8/9]

TEST ( SkinAssignmentsTest ,
LignesRefletentLAssignation  )

Les lignes refletent l'assignation courante du jeu consulte.

Cas de test : Les lignes du panneau refletent l'assignation courante du jeu consulte.
Categorie : Unitaire · Panneau Textures
Criticite : Critique
Etapes :
1. Construire les lignes pour un catalogue ou seul Solid est assigne.
Resultat attendu : La ligne de Solid porte son fichier et son mode ; les autres ont un fichier vide.

◆ TEST() [9/9]

TEST ( SkinAssignmentsTest ,
SectionsSuiventLaPalette  )

Les sections suivent l'organisation de la palette.

Cas de test : Les sections du panneau suivent les categories de la palette.
Categorie : Unitaire · Panneau Textures
Criticite : Majeur
Etapes :
1. Comparer les libelles de sections aux categories de la taxonomie.
Resultat attendu : Les sections reprennent les categories, dans le meme ordre.