|
JustAnotherDnDGame 0.1.0
Jeu de rôle tactique au d20, vue de dessus, en C++/Qt
|
Tests des entites de carte et de l'interaction (LOT-10). More...
#include <algorithm>#include <string>#include <vector>#include <gtest/gtest.h>#include "Core/Ecs/Components/Interactable.h"#include "Core/Ecs/Components/Transform.h"#include "Core/Ecs/World.h"#include "Core/Gameplay/Interaction.h"#include "Core/Gameplay/MapEntitySpawner.h"#include "Core/Gameplay/WorldFlags.h"#include "Core/Levels/Level.h"#include "Core/Levels/TileMap.h"#include "Core/Levels/TileType.h"Functions | |
| TEST (InteractionTest, LaCaseViseeSuitLaDirectionDominante) | |
| La case visee est la voisine dans la direction dominante, jamais une diagonale. | |
| TEST (InteractionTest, UnCoffreNeDonneSonButinQuUneFois) | |
| Ouvrir un coffre deux fois ne donne le butin qu'une fois. | |
| TEST (InteractionTest, LEtatDUnCoffreSurvitAUnAllerRetourDeCarte) | |
| L'etat d'un coffre survit a un aller-retour de carte. | |
| TEST (InteractionTest, LInteractionNeTraversePasUnMur) | |
| L'interaction ne traverse pas un mur. | |
| TEST (InteractionTest, LaCibleEstDeterministeAEgalite) | |
| A deux cibles sur la case visee, la designee est deterministe. | |
| TEST (InteractionTest, UnPanneauSeRelitIndefiniment) | |
| Un panneau se relit indefiniment. | |
| TEST (InteractionTest, DeuxCartesNeSeMarchentPasDessus) | |
| Deux cartes portent un coffre a la meme case sans se marcher dessus. | |
| TEST (InteractionTest, UnTypeInconnuProduitUneEntiteNonInteractive) | |
| Un type d'entite inconnu produit tout de meme une entite, sans composant interactif. | |
| TEST (InteractionTest, LesDrapeauxSeRelisentTries) | |
| Les drapeaux de monde se relisent tries, forme que la sauvegarde ecrira. | |
Tests des entites de carte et de l'interaction (LOT-10).
Les trois criteres d'acceptation du lot ont chacun leur cas : ouvrir un coffre deux fois ne donne le butin qu'une fois Y COMPRIS APRES ALLER-RETOUR DE CARTE ; l'interaction ne traverse pas un mur ; et a deux cibles a portee, celle designee est deterministe.
| TEST | ( | InteractionTest | , |
| DeuxCartesNeSeMarchentPasDessus | ) |
Deux cartes portent un coffre a la meme case sans se marcher dessus.
Cas de test : Deux coffres de cartes differentes a la meme case ont des drapeaux distincts.
Categorie : Unitaire · Interaction
Criticite : Critique
Etapes :
1. Fabriquer la cle de deux coffres a la case (3, 2), sur deux cartes.
| TEST | ( | InteractionTest | , |
| LaCaseViseeSuitLaDirectionDominante | ) |
La case visee est la voisine dans la direction dominante, jamais une diagonale.
Cas de test : La case visee suit la direction dominante de l'orientation.
Categorie : Unitaire · Interaction
Criticite : Majeur
Etapes :
1. Viser avec quatre orientations cardinales, puis une orientation a 30 degres.
| TEST | ( | InteractionTest | , |
| LaCibleEstDeterministeAEgalite | ) |
A deux cibles sur la case visee, la designee est deterministe.
Cas de test : Deux objets sur la meme case designent toujours le meme.
Categorie : Unitaire · Interaction
Criticite : Critique
Etapes :
1. Poser deux objets sur la case visee et designer la cible dix fois.
Resultat attendu : Le meme est designe a chaque fois – le premier de la liste, a distance egale.
| TEST | ( | InteractionTest | , |
| LesDrapeauxSeRelisentTries | ) |
Les drapeaux de monde se relisent tries, forme que la sauvegarde ecrira.
Cas de test : Les drapeaux acquis se relisent dans un ordre stable.
Categorie : Unitaire · Interaction
Criticite : Mineur
Etapes :
1. Lever trois drapeaux dans le desordre, puis les relire.
| TEST | ( | InteractionTest | , |
| LEtatDUnCoffreSurvitAUnAllerRetourDeCarte | ) |
L'etat d'un coffre survit a un aller-retour de carte.
Cas de test : Un coffre ouvert le reste apres avoir quitte la carte et y etre revenu.
Categorie : Unitaire · Interaction
Criticite : Critique
Etapes :
1. Ouvrir un coffre, puis DETRUIRE les entites de la carte et les recreer depuis la couche objects, comme le fait un changement de carte.
Resultat attendu : Le coffre recree n'est plus une cible : l'etat vit dans les drapeaux de monde, pas dans l'entite.
| TEST | ( | InteractionTest | , |
| LInteractionNeTraversePasUnMur | ) |
L'interaction ne traverse pas un mur.
Cas de test : Un objet place sur une case pleine n'est pas atteignable.
Categorie : Unitaire · Interaction
Criticite : Critique
Etapes :
1. Poser un coffre sur une case, puis rendre cette case pleine.
Resultat attendu : Le coffre est atteignable avant, et ne l'est plus apres.
| TEST | ( | InteractionTest | , |
| UnCoffreNeDonneSonButinQuUneFois | ) |
Ouvrir un coffre deux fois ne donne le butin qu'une fois.
Cas de test : Un coffre ne donne son butin qu'a la premiere ouverture.
Categorie : Unitaire · Interaction
Criticite : Critique
Etapes :
1. Interagir deux fois avec le meme coffre.
Resultat attendu : La premiere interaction consomme, la seconde ne trouve plus de cible.
| TEST | ( | InteractionTest | , |
| UnPanneauSeRelitIndefiniment | ) |
Un panneau se relit indefiniment.
Cas de test : Une entite non consommable reste une cible apres interaction.
Categorie : Unitaire · Interaction
Criticite : Majeur
Etapes :
1. Interagir trois fois avec un panneau.
Resultat attendu : Les trois interactions ont lieu, aucune ne consomme, et aucun drapeau n'est leve.
| TEST | ( | InteractionTest | , |
| UnTypeInconnuProduitUneEntiteNonInteractive | ) |
Un type d'entite inconnu produit tout de meme une entite, sans composant interactif.
Cas de test : Un objet de type inconnu apparait sur la carte sans etre interactif.
Categorie : Unitaire · Interaction
Criticite : Majeur
Etapes :
1. Peupler un monde depuis une couche objects portant un type inconnu.
Resultat attendu : L'entite existe et porte un Transform, mais aucun Interactable.