|
JustAnotherDnDGame 0.1.0
Jeu de rôle tactique au d20, vue de dessus, en C++/Qt
|
Tests unitaires du contrat de dimensions des assets graphiques (LOT-40, EX-REN-007). More...
#include <gtest/gtest.h>#include "HMI/Graphics/AssetContract.h"#include "HMI/Graphics/TextureAtlas.h"Functions | |
| TEST (AssetContractTest, SkinDeTuileConformeAccepte) | |
| Un skin de tuile exactement à la taille d'une case est accepté. | |
| TEST (AssetContractTest, SkinDeTuileNonConformeRefuseAvecMessage) | |
| Un skin de tuile aux mauvaises dimensions est refusé, avec un message nommant le fichier, la dimension trouvée et la dimension attendue. | |
| TEST (AssetContractTest, SkinDeTuileAnimeSpritesheetHorizontaleAcceptee) | |
| Un skin de tuile ANIME (LOT-46) est une spritesheet horizontale sur un seul rang : plusieurs cases de large, une case de haut. | |
| TEST (AssetContractTest, SkinDeTuileSurPlusieursRangsRefuse) | |
| Un skin de tuile de plus d'un rang (hauteur multiple de la case, mais pas exactement une case) reste refusé : la spritesheet animée n'a jamais qu'un seul rang (LOT-46). | |
| TEST (AssetContractTest, PlancheARaccordsExigeQuatreCasesMinimum) | |
| Une planche à raccords doit être un multiple de la taille de tuile et compter au moins 4x4 cases. | |
| TEST (AssetContractTest, FondDeNiveauSansContrainteDeGrille) | |
| Un fond de niveau accepte n'importe quelles dimensions strictement positives : il est étiré au rendu et n'est jamais découpé en grille. | |
| TEST (AssetContractTest, SpritesheetPersonnageMultipleDeCase) | |
| Une spritesheet de personnage doit se découper en cases entières. | |
| TEST (AssetContractTest, AtlasLivreConforme) | |
| L'atlas historique reste conforme à son propre contrat : la validation introduite par ce lot ne peut pas refuser l'asset déjà livré. | |
| TEST (AssetContractTest, ToutesLesFamillesSontNommees) | |
| Chaque famille d'asset porte un nom lisible, repris dans les messages d'erreur. | |
Tests unitaires du contrat de dimensions des assets graphiques (LOT-40, EX-REN-007).
| TEST | ( | AssetContractTest | , |
| AtlasLivreConforme | ) |
L'atlas historique reste conforme à son propre contrat : la validation introduite par ce lot ne peut pas refuser l'asset déjà livré.
Cas de test : L'atlas historique reste conforme au contrat de sa famille.
Categorie : Unitaire · Asset Contract
Criticite : Critique
Etapes :
1. Valider les dimensions de la grille d'atlas livree.
Resultat attendu : La validation reussit.
| TEST | ( | AssetContractTest | , |
| FondDeNiveauSansContrainteDeGrille | ) |
Un fond de niveau accepte n'importe quelles dimensions strictement positives : il est étiré au rendu et n'est jamais découpé en grille.
Cas de test : Un fond de niveau accepte toute dimension strictement positive.
Categorie : Unitaire · Asset Contract
Criticite : Mineur
Etapes :
1. Valider un fond aux dimensions quelconques, puis un fond de largeur nulle.
Resultat attendu : Le premier est accepte, le second refuse.
| TEST | ( | AssetContractTest | , |
| PlancheARaccordsExigeQuatreCasesMinimum | ) |
Une planche à raccords doit être un multiple de la taille de tuile et compter au moins 4x4 cases.
Cas de test : Une planche a raccords exige un multiple de case et au moins 4x4 cases.
Categorie : Unitaire · Asset Contract
Criticite : Majeur
Etapes :
1. Valider une planche 4x4 cases, puis 3x4 cases, puis un multiple rompu.
Resultat attendu : Seule la planche 4x4 cases est acceptee.
| TEST | ( | AssetContractTest | , |
| SkinDeTuileAnimeSpritesheetHorizontaleAcceptee | ) |
Un skin de tuile ANIME (LOT-46) est une spritesheet horizontale sur un seul rang : plusieurs cases de large, une case de haut.
La cohérence fine (nombre d'images, indices référencés par les clips) relève de hmi::AnimationCatalog::validateAgainstTexture. Cas de test : Une spritesheet animee (plusieurs cases de large, une case de haut) est acceptee.
Categorie : Unitaire · Asset Contract
Criticite : Majeur
Etapes :
1. Valider un skin de tuile de 64x16 px (4 images).
Resultat attendu : La validation reussit.
| TEST | ( | AssetContractTest | , |
| SkinDeTuileConformeAccepte | ) |
Un skin de tuile exactement à la taille d'une case est accepté.
Cas de test : Un skin de tuile de 16x16 px est accepte.
Categorie : Unitaire · Asset Contract
Criticite : Majeur
Etapes :
1. Valider un asset de la famille « skin de tuile » aux dimensions d'une case.
Resultat attendu : La validation reussit et le message est vide.
| TEST | ( | AssetContractTest | , |
| SkinDeTuileNonConformeRefuseAvecMessage | ) |
Un skin de tuile aux mauvaises dimensions est refusé, avec un message nommant le fichier, la dimension trouvée et la dimension attendue.
Cas de test : Un skin de tuile non conforme est refuse avec un message exploitable.
Categorie : Unitaire · Asset Contract
Criticite : Critique
Etapes :
1. Valider un skin de tuile de 24x16 px.
2. Inspecter le message d'erreur.
Resultat attendu : La validation echoue et le message nomme le fichier, le trouve et l'attendu.
| TEST | ( | AssetContractTest | , |
| SkinDeTuileSurPlusieursRangsRefuse | ) |
Un skin de tuile de plus d'un rang (hauteur multiple de la case, mais pas exactement une case) reste refusé : la spritesheet animée n'a jamais qu'un seul rang (LOT-46).
Cas de test : Une image sur plusieurs rangs (hauteur non conforme) est refusee.
Categorie : Unitaire · Asset Contract
Criticite : Majeur
Etapes :
1. Valider un skin de tuile de 16x32 px.
Resultat attendu : La validation echoue.
| TEST | ( | AssetContractTest | , |
| SpritesheetPersonnageMultipleDeCase | ) |
Une spritesheet de personnage doit se découper en cases entières.
Cas de test : Une spritesheet de personnage doit se decouper en cases entieres.
Categorie : Unitaire · Asset Contract
Criticite : Majeur
Etapes :
1. Valider une spritesheet multiple de la case, puis une spritesheet decalee.
Resultat attendu : Seule la spritesheet multiple de la case est acceptee.
| TEST | ( | AssetContractTest | , |
| ToutesLesFamillesSontNommees | ) |
Chaque famille d'asset porte un nom lisible, repris dans les messages d'erreur.
Cas de test : Chaque famille d'asset porte un nom lisible non vide.
Categorie : Unitaire · Asset Contract
Criticite : Mineur
Etapes :
1. Nommer chaque famille declaree.
Resultat attendu : Aucun nom n'est vide ni « Inconnu ».