|
JustAnotherDnDGame 0.1.0
Jeu de rôle tactique au d20, vue de dessus, en C++/Qt
|
Tests unitaires de l'encodage/enregistrement d'image, symétrique du décodage (LOT-54 TACHE-01, EX-EDIT-045). More...
#include <cstdint>#include <filesystem>#include <string>#include <system_error>#include <gtest/gtest.h>#include "HMI/Graphics/TextureLoader.h"Functions | |
| TEST_F (ImageEncode, AllerRetourExactAlphaCompris) | |
| Encoder puis décoder restitue exactement les mêmes pixels, canal alpha compris (opaque, transparent et partiellement transparent). | |
| TEST_F (ImageEncode, DossierInexistantEchoueProprement) | |
| Un dossier de destination inexistant est une erreur récupérable : aucune exception, résultat exploitable. | |
| TEST_F (ImageEncode, DimensionsIncoherentesEchouentProprement) | |
| Une image invalide (dimensions non conformes au tampon fourni) est refusée sans exception plutôt que d'écrire un fichier corrompu. | |
| TEST_F (ImageEncode, AucunFichierTemporaireApresSucces) | |
| L'écriture est atomique : aucun fichier temporaire ne subsiste après un encodage réussi. | |
| TEST_F (ImageEncode, EcrasementAtomiqueSansResidu) | |
| L'écriture est atomique : un enregistrement par-dessus un asset existant préserve l'ancien fichier tant que le nouveau n'est pas complet, et ne laisse rien de résiduel après coup. | |
Tests unitaires de l'encodage/enregistrement d'image, symétrique du décodage (LOT-54 TACHE-01, EX-EDIT-045).
| TEST_F | ( | ImageEncode | , |
| AllerRetourExactAlphaCompris | ) |
Encoder puis décoder restitue exactement les mêmes pixels, canal alpha compris (opaque, transparent et partiellement transparent).
Cas de test : Encoder puis decoder une image restitue exactement les memes pixels, alpha compris.
Categorie : Unitaire · Encodage image
Criticite : Critique
Etapes :
1. Encoder une image 2x2 couvrant plusieurs niveaux d'alpha vers un fichier PNG.
| TEST_F | ( | ImageEncode | , |
| AucunFichierTemporaireApresSucces | ) |
L'écriture est atomique : aucun fichier temporaire ne subsiste après un encodage réussi.
Cas de test : Aucun fichier temporaire ne subsiste apres un encodage reussi.
Categorie : Unitaire · Encodage image
Criticite : Majeur
Etapes :
1. Encoder une image vers un fichier.
2. Lister le dossier de destination.
Resultat attendu : Seul le fichier final est present, aucun fichier .tmp.
| TEST_F | ( | ImageEncode | , |
| DimensionsIncoherentesEchouentProprement | ) |
Une image invalide (dimensions non conformes au tampon fourni) est refusée sans exception plutôt que d'écrire un fichier corrompu.
Cas de test : Encoder une image aux dimensions incoherentes echoue proprement.
Categorie : Unitaire · Encodage image
Criticite : Majeur
Etapes :
1. Construire une image dont le nombre de pixels ne correspond pas a largeur*hauteur.
2. Tenter de l'encoder.
Resultat attendu : La fonction renvoie false, sans lever d'exception, et n'ecrit aucun fichier.
| TEST_F | ( | ImageEncode | , |
| DossierInexistantEchoueProprement | ) |
Un dossier de destination inexistant est une erreur récupérable : aucune exception, résultat exploitable.
Cas de test : Encoder vers un dossier inexistant echoue proprement, sans exception.
Categorie : Unitaire · Encodage image
Criticite : Majeur
Etapes :
1. Tenter d'encoder une image vers un chemin dont le dossier parent n'existe pas.
Resultat attendu : La fonction renvoie false, sans lever d'exception.
| TEST_F | ( | ImageEncode | , |
| EcrasementAtomiqueSansResidu | ) |
L'écriture est atomique : un enregistrement par-dessus un asset existant préserve l'ancien fichier tant que le nouveau n'est pas complet, et ne laisse rien de résiduel après coup.
Cas de test : Enregistrer par-dessus un asset existant remplace son contenu sans residu.
Categorie : Unitaire · Encodage image
Criticite : Majeur
Etapes :
1. Encoder une premiere image vers un fichier.
2. Encoder une seconde image differente vers le meme fichier.
3. Decoder le fichier et lister le dossier.
Resultat attendu : Le fichier contient la seconde image, et aucun fichier temporaire ne subsiste.