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

Tests unitaires des tailles proposées à la création d'un asset dans l'atelier pixel art (LOT-54 TACHE-05, EX-REN-007). More...

#include <gtest/gtest.h>
#include "HMI/Editor/PixelAssetIO.h"
#include "HMI/Graphics/TextureAtlas.h"

Functions

 TEST (PixelAssetIOTest, ChaqueTailleProposeeEstConforme)
 Chaque taille proposée, pour chaque famille, est conforme au contrat de dimensions de sa famille — une création à une taille non conforme ne doit jamais être proposée.
 TEST (PixelAssetIOTest, FamilleADimensionsLibresNeProposeAucuneTaille)
 Une famille à dimensions libres (fond, décor, police) ne propose aucune taille : la saisie libre reste à la charge de l'appelant.
 TEST (PixelAssetIOTest, TileSkinProposeDesLargeursMultiplesDeCase)
 Un skin de tuile propose des tailles de hauteur exactement une case, avec une largeur multiple de case croissante (skin anime).
 TEST (PixelAssetIOTest, AutotileSheetProposePlusieursTailles)
 Une famille à taille exacte (Atlas exclu, il n'a pas de hauteur exacte) ne propose qu'une seule taille.

Detailed Description

Tests unitaires des tailles proposées à la création d'un asset dans l'atelier pixel art (LOT-54 TACHE-05, EX-REN-007).

Function Documentation

◆ TEST() [1/4]

TEST ( PixelAssetIOTest ,
AutotileSheetProposePlusieursTailles  )

Une famille à taille exacte (Atlas exclu, il n'a pas de hauteur exacte) ne propose qu'une seule taille.

Cas de test : Les familles a taille non contrainte proposent plusieurs options.
Categorie : Unitaire · IO d'asset pixel art
Criticite : Mineur
Etapes :
1. Produire les tailles proposees pour AutotileSheet.
Resultat attendu : Plusieurs tailles distinctes sont proposees (progression, pas une valeur unique).

◆ TEST() [2/4]

TEST ( PixelAssetIOTest ,
ChaqueTailleProposeeEstConforme  )

Chaque taille proposée, pour chaque famille, est conforme au contrat de dimensions de sa famille — une création à une taille non conforme ne doit jamais être proposée.

Cas de test : Chaque taille proposee est conforme au contrat de sa famille.
Categorie : Unitaire · IO d'asset pixel art
Criticite : Critique
Etapes :
1. Pour chaque famille, produire les tailles proposees.
2. Valider chacune contre le contrat de la meme famille.
Resultat attendu : Chaque taille proposee est jugee conforme.

◆ TEST() [3/4]

TEST ( PixelAssetIOTest ,
FamilleADimensionsLibresNeProposeAucuneTaille  )

Une famille à dimensions libres (fond, décor, police) ne propose aucune taille : la saisie libre reste à la charge de l'appelant.

Cas de test : Une famille a dimensions libres ne propose aucune taille.
Categorie : Unitaire · IO d'asset pixel art
Criticite : Majeur
Etapes :
1. Produire les tailles proposees pour Fond et Police.
Resultat attendu : Les trois listes sont vides.

◆ TEST() [4/4]

TEST ( PixelAssetIOTest ,
TileSkinProposeDesLargeursMultiplesDeCase  )

Un skin de tuile propose des tailles de hauteur exactement une case, avec une largeur multiple de case croissante (skin anime).

Cas de test : Un skin de tuile propose des largeurs multiples de case, hauteur fixe.
Categorie : Unitaire · IO d'asset pixel art
Criticite : Majeur
Etapes :
1. Produire les tailles proposees pour TileSkin.
2. Verifier la hauteur et la largeur de chaque taille.
Resultat attendu : La liste n'est pas vide ; chaque hauteur vaut la taille d'une case ; chaque largeur est un multiple de la taille d'une case.