|
JustAnotherDnDGame 0.1.0
Jeu de rôle tactique au d20, vue de dessus, en C++/Qt
|
Tests du bestiaire de base (LOT-33) : les 94 profils chargent, et dix sont rejoues contre des valeurs RECOPIEES A LA MAIN d'Animaux.pdf. More...
#include <algorithm>#include <array>#include <cstddef>#include <filesystem>#include <optional>#include <set>#include <string>#include <vector>#include <gtest/gtest.h>#include "Core/Rpg/Bestiary.h"#include "Core/Rpg/Dice.h"#include "Core/Rpg/RpgEnumNames.h"Functions | |
| TEST (BestiaryTest, LesQuatreVingtQuatorzeProfilsChargent) | |
| Les 94 profils du SRD chargent sans une erreur. | |
| TEST (BestiaryTest, DixProfilsConcordentAvecLeLivre) | |
| Dix profils sont rejoues contre les valeurs du PDF, recopiees a la main. | |
| TEST (BestiaryTest, ChaqueProfilEstComplet) | |
| Toute creature porte les six caracteristiques et une vitesse de marche. | |
| TEST (BestiaryTest, UneVitesseNulleSignifieUnAutreDeplacement) | |
| Les creatures a vitesse de marche nulle nagent ou volent. | |
| TEST (BestiaryTest, LesMecanismesExigesSontAnnonces) | |
| Les mecanismes exiges par les donnees sont listes au chargement (EX-CNT-031). | |
| TEST (BestiaryTest, UnDossierAbsentEstSignale) | |
| Un dossier absent est signale, jamais confondu avec un bestiaire vide. | |
Tests du bestiaire de base (LOT-33) : les 94 profils chargent, et dix sont rejoues contre des valeurs RECOPIEES A LA MAIN d'Animaux.pdf.
Le second point est l'acceptation du lot, et il n'est pas negociable dans sa forme : les valeurs ci-dessous ont ete lues sur le PDF, pas copiees depuis le JSON produit. Un test qui comparerait la sortie de la generation a elle-meme passerait quelle que soit la faute d'extraction – c'est exactement la panne qu'il doit exclure.
| TEST | ( | BestiaryTest | , |
| ChaqueProfilEstComplet | ) |
Toute creature porte les six caracteristiques et une vitesse de marche.
Cas de test : Aucun profil du bestiaire n'a de caracteristique ni de vitesse manquante.
Categorie : Unitaire · Bestiaire
Criticite : Critique
Etapes :
1. Pour chaque creature, verifier que les six caracteristiques sont dans [1, 30].
| TEST | ( | BestiaryTest | , |
| DixProfilsConcordentAvecLeLivre | ) |
Dix profils sont rejoues contre les valeurs du PDF, recopiees a la main.
Cas de test : Dix blocs de statistiques du bestiaire concordent avec le livre.
Categorie : Unitaire · Bestiaire
Criticite : Critique
Etapes :
1. Pour douze creatures, comparer classe d'armure, points de vie, vitesse de marche, facteur de puissance et degats de l'attaque principale aux valeurs lues sur Animaux.pdf.
Resultat attendu : Les cinq valeurs coincident pour chacune ; une extraction decalee d'une ligne fait echouer ce test.
| TEST | ( | BestiaryTest | , |
| LesMecanismesExigesSontAnnonces | ) |
Les mecanismes exiges par les donnees sont listes au chargement (EX-CNT-031).
Cas de test : Le bestiaire annonce les mecanismes que les creatures exigent du moteur.
Categorie : Unitaire · Bestiaire
Criticite : Majeur
Etapes :
1. Collecter les mecanismesRequis de toutes les creatures chargees.
Resultat attendu : La liste porte la resistance conditionnelle et la langue comprise sans etre parlee, les deux nuances que les champs types ne peuvent pas exprimer.
| TEST | ( | BestiaryTest | , |
| LesQuatreVingtQuatorzeProfilsChargent | ) |
Les 94 profils du SRD chargent sans une erreur.
Cas de test : Les 94 creatures du bestiaire de base se chargent toutes.
Categorie : Unitaire · Bestiaire
Criticite : Critique
Etapes :
1. Charger Source/Elements/Rpg/creatures.
| TEST | ( | BestiaryTest | , |
| UnDossierAbsentEstSignale | ) |
Un dossier absent est signale, jamais confondu avec un bestiaire vide.
Cas de test : Charger un dossier de creatures inexistant produit une erreur nommee.
Categorie : Unitaire · Bestiaire
Criticite : Majeur
Etapes :
1. Charger un chemin qui n'existe pas.
Resultat attendu : Aucune creature, une erreur qui nomme le chemin, et aucune exception.
| TEST | ( | BestiaryTest | , |
| UneVitesseNulleSignifieUnAutreDeplacement | ) |
Les creatures a vitesse de marche nulle nagent ou volent.
Cas de test : Une creature sans vitesse de marche possede un autre mode de deplacement.
Categorie : Unitaire · Bestiaire
Criticite : Majeur
Etapes :
1. Relever les creatures dont walk vaut 0.
Resultat attendu : Chacune porte une vitesse de nage, de vol, d'escalade ou de creusement.