|
JustAnotherDnDGame 0.1.0
Jeu de rôle tactique au d20, vue de dessus, en C++/Qt
|
Tests unitaires de la partition d'un niveau en salles (RoomGrid, LOT-32). More...
Functions | |
| TEST (RoomGridTest, NiveauPlusPetitQuUneSalleProduitUneSeuleSalle) | |
| Un niveau plus petit qu'une salle produit une seule salle couvrant le niveau entier. | |
| TEST (RoomGridTest, NiveauMultipleExactNeRogneAucuneSalle) | |
| Un niveau exactement multiple de la taille de salle ne rogne aucune salle. | |
| TEST (RoomGridTest, NiveauNonMultipleRogneLaDerniereSalle) | |
| Un niveau non multiple de la taille de salle rogne la dernière colonne/ligne. | |
| TEST (RoomGridTest, RoomIndexAtQuatreCoins) | |
| roomIndexAt renvoie l'indice de salle correct aux quatre coins et au centre. | |
| TEST (RoomGridTest, PositionHorsBornesEstBornee) | |
| Une position hors des bornes du niveau est bornée à la salle la plus proche. | |
| TEST (RoomGridTest, TailleDeSallePersonnaliseePartitionneSelonCetteTaille) | |
| Construit sans taille explicite, RoomGrid utilise ROOM_WIDTH_TILES/ROOM_HEIGHT_TILES comme valeurs par défaut ; une taille personnalisée (LOT-64) partitionne selon celle-ci, avec la même règle de troncature au bord du niveau. | |
Tests unitaires de la partition d'un niveau en salles (RoomGrid, LOT-32).
| TEST | ( | RoomGridTest | , |
| NiveauMultipleExactNeRogneAucuneSalle | ) |
Un niveau exactement multiple de la taille de salle ne rogne aucune salle.
Cas de test : Un niveau exactement multiple de la taille de salle ne rogne aucune salle.
Categorie : Unitaire · RoomGrid
Criticite : Majeur
Etapes :
1. Construire un RoomGrid pour un niveau dont chaque dimension est un multiple exact de la taille de salle.
2. Vérifier columns()/rows() et le rectangle de chaque salle.
Resultat attendu : Le nombre de salles correspond exactement au ratio ; chaque salle a la taille pleine (aucun rectangle rogné), y compris la dernière colonne/ligne.
| TEST | ( | RoomGridTest | , |
| NiveauNonMultipleRogneLaDerniereSalle | ) |
Un niveau non multiple de la taille de salle rogne la dernière colonne/ligne.
Cas de test : Un niveau non multiple de la taille de salle rogne la dernière colonne/ligne.
Categorie : Unitaire · RoomGrid
Criticite : Majeur
Etapes :
1. Construire un RoomGrid pour un niveau dépassant de quelques cases un multiple de la taille de salle.
2. Vérifier le rectangle de la dernière salle sur chaque axe.
Resultat attendu : La dernière colonne/ligne de salles est rognée à la taille réellement restante, jamais agrandie au-delà des bornes du niveau.
| TEST | ( | RoomGridTest | , |
| NiveauPlusPetitQuUneSalleProduitUneSeuleSalle | ) |
Un niveau plus petit qu'une salle produit une seule salle couvrant le niveau entier.
Cas de test : Un niveau plus petit qu'une salle produit une seule salle couvrant le niveau entier.
Categorie : Unitaire · RoomGrid
Criticite : Majeur
Etapes :
1. Construire un RoomGrid pour un niveau plus petit que la taille de salle sur les deux axes.
2. Vérifier columns()/rows() et le rectangle de l'unique salle.
Resultat attendu : Une seule salle (columns() == rows() == 1), dont le rectangle couvre exactement le niveau entier — condition de non-régression exploitée par le cadrage caméra (LOT-16).
| TEST | ( | RoomGridTest | , |
| PositionHorsBornesEstBornee | ) |
Une position hors des bornes du niveau est bornée à la salle la plus proche.
Cas de test : Une position hors des bornes du niveau est bornée à la salle la plus proche.
Categorie : Unitaire · RoomGrid
Criticite : Mineur
Etapes :
1. Construire un RoomGrid pour un petit niveau.
2. Interroger roomIndexAt avec des coordonnées négatives puis très supérieures aux bornes.
Resultat attendu : Aucun comportement indéfini : l'indice renvoyé reste dans [0, columns()) × [0, rows()), borné au bord correspondant du niveau.
| TEST | ( | RoomGridTest | , |
| RoomIndexAtQuatreCoins | ) |
roomIndexAt renvoie l'indice de salle correct aux quatre coins et au centre.
Cas de test : roomIndexAt renvoie l'indice de salle correct aux quatre coins et au centre.
Categorie : Unitaire · RoomGrid
Criticite : Majeur
Etapes :
1. Construire un RoomGrid de 2x2 salles.
2. Interroger roomIndexAt à des positions choisies dans chacune des quatre salles.
Resultat attendu : Chaque position renvoie l'indice de la salle qui la contient réellement.
| TEST | ( | RoomGridTest | , |
| TailleDeSallePersonnaliseePartitionneSelonCetteTaille | ) |
Construit sans taille explicite, RoomGrid utilise ROOM_WIDTH_TILES/ROOM_HEIGHT_TILES comme valeurs par défaut ; une taille personnalisée (LOT-64) partitionne selon celle-ci, avec la même règle de troncature au bord du niveau.
Cas de test : Une taille de salle personnalisée partitionne selon cette taille.
Categorie : Unitaire · RoomGrid
Criticite : Majeur
Etapes :
1. Construire un RoomGrid sans taille explicite, vérifier roomWidthTiles()/ roomHeightTiles().
2. Construire un RoomGrid avec une taille personnalisée non multiple du niveau.
3. Vérifier le nombre de salles et la troncature de la dernière.
Resultat attendu : Sans taille explicite, la partition utilise ROOM_WIDTH_TILES/ROOM_HEIGHT_TILES ; avec une taille personnalisée, le nombre de salles et leur rognage suivent cette taille, pas la valeur par défaut.