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

Tests unitaires de la génération procédurale de l'atlas de repli (LOT-39, EX-NFR-040). More...

#include <map>
#include <gtest/gtest.h>
#include "Core/Levels/TileType.h"
#include "Core/Levels/TileTypeName.h"
#include "HMI/Graphics/ProceduralAtlas.h"
#include "HMI/Graphics/TextureAtlas.h"
#include "HMI/Graphics/TileVisuals.h"

Functions

 TEST (ProceduralAtlasTest, DimensionsAttendues)
 L'image générée a les dimensions attendues : la grille de tuiles, plus une ligne d'images de personnage par tranche de PLAYER_FRAME_COLUMNS images.
 TEST (ProceduralAtlasTest, GenerationDeterministe)
 La génération est déterministe : deux appels produisent des pixels identiques.
 TEST (ProceduralAtlasTest, DamierDeTransparenceDansLaDerniereTuile)
 La dernière tuile de la grille (damier de transparence) contient à la fois des pixels opaques et des pixels transparents, pour exercer le canal alpha du rendu.
 TEST (ProceduralAtlasTest, ChaqueTypeDeTuileAUneCouleurDeRepliDistincte)
 Chaque type de tuile a une couleur de repli visible et distincte dans l'atlas procédural : le jeu affiche une carte sans aucun fichier d'image (EX-NFR-040, LOT-08).

Detailed Description

Tests unitaires de la génération procédurale de l'atlas de repli (LOT-39, EX-NFR-040).

Function Documentation

◆ TEST() [1/4]

TEST ( ProceduralAtlasTest ,
ChaqueTypeDeTuileAUneCouleurDeRepliDistincte  )

Chaque type de tuile a une couleur de repli visible et distincte dans l'atlas procédural : le jeu affiche une carte sans aucun fichier d'image (EX-NFR-040, LOT-08).

C'est le garde-fou que le vocabulaire de terrain du LOT-08 réclamait : ajouter un type sans lui peindre de repli laisserait sa case noire, indiscernable de ses voisines — une carte illisible plutôt qu'une carte laide. Cas de test : Chaque type de tuile a une couleur de repli visible et distincte.
Categorie : Unitaire · Atlas procedural
Criticite : Critique
Etapes :
1. Generer l'atlas procedural.
2. Echantillonner le centre de la case de chaque type de tuile, hors case vide.
Resultat attendu : Aucune couleur n'est noire, et deux types n'en partagent jamais une.

◆ TEST() [2/4]

TEST ( ProceduralAtlasTest ,
DamierDeTransparenceDansLaDerniereTuile  )

La dernière tuile de la grille (damier de transparence) contient à la fois des pixels opaques et des pixels transparents, pour exercer le canal alpha du rendu.

Cas de test : La dernière tuile de la grille contient des pixels opaques et transparents (damier).
Categorie : Unitaire · Procedural Atlas
Criticite : Mineur
Etapes :
1. Mettre en place le contexte du test (arrangement).
2. Executer le scenario et verifier les assertions.
Resultat attendu : La dernière tuile de la grille contient des pixels opaques et transparents.

◆ TEST() [3/4]

TEST ( ProceduralAtlasTest ,
DimensionsAttendues  )

L'image générée a les dimensions attendues : la grille de tuiles, plus une ligne d'images de personnage par tranche de PLAYER_FRAME_COLUMNS images.

Cas de test : L'image générée a les dimensions attendues (grille de tuiles + lignes de personnage).
Categorie : Unitaire · Procedural Atlas
Criticite : Majeur
Etapes :
1. Mettre en place le contexte du test (arrangement).
2. Executer le scenario et verifier les assertions.
Resultat attendu : L'image générée a les dimensions attendues.

◆ TEST() [4/4]

TEST ( ProceduralAtlasTest ,
GenerationDeterministe  )

La génération est déterministe : deux appels produisent des pixels identiques.

Cas de test : La génération est déterministe : deux appels produisent des pixels identiques.
Categorie : Unitaire · Procedural Atlas
Criticite : Majeur
Etapes :
1. Mettre en place le contexte du test (arrangement).
2. Executer le scenario et verifier les assertions.
Resultat attendu : La génération est déterministe.