|
JustAnotherDnDGame 0.1.0
Jeu de rôle tactique au d20, vue de dessus, en C++/Qt
|
Tests des clés d'assets d'entité et de leurs marqueurs (LOT-39, EX-CNT-040, EX-CNT-041). More...
#include <algorithm>#include <filesystem>#include <set>#include <string>#include <vector>#include <gtest/gtest.h>#include "Core/Resources/AssetKey.h"#include "Core/Resources/AssetMarker.h"Functions | |
| TEST (AssetKeyTest, UneCleNEstJamaisUnCheminDeFichier) | |
| Une clé d'asset n'est jamais un chemin de fichier. | |
| TEST (AssetKeyTest, UneCleSeDecomposeEtSeRecompose) | |
| Une clé se décompose et se recompose sans perte. | |
| TEST (AssetKeyTest, LaTableDesFamillesLivreeSeCharge) | |
| La table des familles LIVRÉE se charge, et chaque famille porte ses dimensions. | |
| TEST (AssetKeyTest, AucuneCleOrphelineDansLesCataloguesLivres) | |
| Aucune clé orpheline dans les catalogues livrés — c'est le critère d'acceptation. | |
| TEST (AssetKeyTest, LeManifesteDeriveNAPasDeDoublon) | |
| Le manifeste dérivé ne porte aucun doublon, et chaque clé est bien formée. | |
| TEST (AssetMarkerTest, UnMarqueurEstDeterministe) | |
| Un marqueur est déterministe : la même clé donne toujours le même. | |
| TEST (AssetMarkerTest, UnMarqueurRespecteSesDimensionsEtSeVoit) | |
| Un marqueur respecte les dimensions demandées, et se voit comme un marqueur. | |
| TEST (AssetMarkerTest, UneCleMalformeeNeRecoitPasDeMarqueur) | |
| Une clé malformée ne reçoit pas de marqueur. | |
| TEST (AssetMarkerTest, TouteCleAttendueObtientUnMarqueur) | |
| Toute clé attendue par les catalogues obtient un marqueur : le jeu tourne complet. | |
Tests des clés d'assets d'entité et de leurs marqueurs (LOT-39, EX-CNT-040, EX-CNT-041).
Ces tests lisent la donnée livrée — la table des familles et les catalogues réels — parce que c'est elle que le jeu chargera, et que le manifeste est dérivé : une fixture serait une seconde source, qui divergerait au premier ajout de créature.
| TEST | ( | AssetKeyTest | , |
| AucuneCleOrphelineDansLesCataloguesLivres | ) |
Aucune clé orpheline dans les catalogues livrés — c'est le critère d'acceptation.
Cas de test : Aucune cle d'asset orpheline dans les catalogues livres.
Categorie : Unitaire · Assets
Criticite : Critique
Etapes :
1. Deriver le manifeste des catalogues reels.
2. Relever les erreurs.
Resultat attendu : Aucune erreur : toute derogation ecrite dans une donnee est bien formee et nomme une famille connue.
| TEST | ( | AssetKeyTest | , |
| LaTableDesFamillesLivreeSeCharge | ) |
La table des familles LIVRÉE se charge, et chaque famille porte ses dimensions.
Cas de test : La table des familles livree se charge.
Categorie : Unitaire · Assets
Criticite : Critique
Etapes :
1. Charger Assets/Entities/families.json.
Resultat attendu : La table est valide, chaque famille a un nom conforme, des dimensions positives et au moins un dossier de catalogue.
| TEST | ( | AssetKeyTest | , |
| LeManifesteDeriveNAPasDeDoublon | ) |
Le manifeste dérivé ne porte aucun doublon, et chaque clé est bien formée.
Cas de test : Le manifeste derive n'a aucun doublon et chaque cle est bien formee.
Categorie : Unitaire · Assets
Criticite : Critique
Etapes :
1. Deriver le manifeste.
2. Verifier l'unicite et la syntaxe de chaque cle.
Resultat attendu : Chaque cle est unique, valide, et nomme une famille de la table.
| TEST | ( | AssetKeyTest | , |
| UneCleNEstJamaisUnCheminDeFichier | ) |
Une clé d'asset n'est jamais un chemin de fichier.
Cas de test : Une cle d'asset n'est jamais un chemin de fichier.
Categorie : Unitaire · Assets
Criticite : Critique
Etapes :
1. Valider des cles bien formees.
2. Valider des chemins et des cles malformees.
Resultat attendu : Seules les cles famille/identifiant sont acceptees ; tout ce qui ressemble a un chemin est refuse.
| TEST | ( | AssetKeyTest | , |
| UneCleSeDecomposeEtSeRecompose | ) |
Une clé se décompose et se recompose sans perte.
Cas de test : Une cle se decompose et se recompose sans perte.
Categorie : Unitaire · Assets
Criticite : Majeur
Etapes :
1. Decomposer une cle valide.
2. La reformer depuis ses deux morceaux.
Resultat attendu : L'aller-retour redonne la cle de depart ; une cle malformee ne se devine pas.
| TEST | ( | AssetMarkerTest | , |
| TouteCleAttendueObtientUnMarqueur | ) |
Toute clé attendue par les catalogues obtient un marqueur : le jeu tourne complet.
Cas de test : Toute cle attendue obtient un marqueur.
Categorie : Unitaire · Assets
Criticite : Critique
Etapes :
1. Deriver le manifeste des catalogues reels.
2. Peindre le marqueur de chaque cle aux dimensions de sa famille.
Resultat attendu : Aucune image vide : les trois cents entrees sont affichables avant qu'aucune illustration n'existe (EX-CNT-041).
| TEST | ( | AssetMarkerTest | , |
| UneCleMalformeeNeRecoitPasDeMarqueur | ) |
Une clé malformée ne reçoit pas de marqueur.
Cas de test : Une cle malformee ne recoit pas de marqueur.
Categorie : Unitaire · Assets
Criticite : Majeur
Etapes :
1. Demander le marqueur d'une cle malformee, puis de dimensions nulles.
Resultat attendu : L'image est vide dans les deux cas.
| TEST | ( | AssetMarkerTest | , |
| UnMarqueurEstDeterministe | ) |
Un marqueur est déterministe : la même clé donne toujours le même.
Cas de test : Un marqueur est deterministe.
Categorie : Unitaire · Assets
Criticite : Critique
Etapes :
1. Peindre deux fois le marqueur d'une meme cle.
2. Peindre celui d'une autre cle.
Resultat attendu : Les deux premiers sont identiques pixel a pixel ; le troisieme differe.
| TEST | ( | AssetMarkerTest | , |
| UnMarqueurRespecteSesDimensionsEtSeVoit | ) |
Un marqueur respecte les dimensions demandées, et se voit comme un marqueur.
Cas de test : Un marqueur respecte ses dimensions et se voit comme un marqueur.
Categorie : Unitaire · Assets
Criticite : Majeur
Etapes :
1. Peindre un marqueur aux dimensions d'une famille.
2. Comparer un pixel de la diagonale a un pixel de coin.
Resultat attendu : Les dimensions sont celles demandees, et les diagonales tranchent sur le fond.