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

Tests des armes et des armures (LOT-34). More...

#include <array>
#include <filesystem>
#include <string>
#include <vector>
#include <gtest/gtest.h>
#include "Core/Rpg/CharacterSheet.h"
#include "Core/Rpg/Equipment.h"

Functions

 TEST (EquipmentTest, LesDeuxCataloguesSeChargent)
 Les deux catalogues se chargent sans erreur.
 TEST (EquipmentTest, LesTreizeArmuresPortentLesValeursDuLivre)
 Les 13 armures portent les valeurs de la table du livre.
 TEST (EquipmentTest, LaCaCalculeeEgaleLaColonneDuLivre)
 La CA calculee par le moteur egale celle de la table, pour les 13 armures.
 TEST (EquipmentTest, LeBouclierAjouteIlNeRemplacePas)
 Le bouclier ajoute, il ne remplace pas.
 TEST (EquipmentTest, LePoidsDUnInventaireDeDepartCorrespondAuCalculManuel)
 Le poids d'un inventaire de depart correspond au calcul manuel.
 TEST (EquipmentTest, LeFiletNInfligeAucunDegat)
 Le filet n'inflige aucun degat, et le catalogue le dit.
 TEST (EquipmentTest, LesArmesPortentLeurCategorieEtLeurPortee)
 Les armes portent leur categorie et leur portee, qui viennent des intertitres.

Detailed Description

Tests des armes et des armures (LOT-34).

L'acceptation du lot tient en deux phrases : la CA calculee par le moteur pour chacune des 13 armures du catalogue egale la colonne CA de la table du livre ; et le poids total d'un inventaire de depart correspond au calcul manuel. Les deux valeurs de reference sont RECOPIEES A LA MAIN des Basic Rules – comparer la sortie de la generation a elle-meme passerait quelle que soit la faute d'extraction.

Function Documentation

◆ TEST() [1/7]

TEST ( EquipmentTest ,
LaCaCalculeeEgaleLaColonneDuLivre  )

La CA calculee par le moteur egale celle de la table, pour les 13 armures.

Cas de test : La classe d'armure calculee pour chaque armure egale la colonne CA du livre.
Categorie : Unitaire · Equipement
Criticite : Critique
Etapes :
1. Avec une Dexterite de 18 (modificateur +4), calculer la CA de chaque armure.

  1. La comparer a la formule de la colonne CA, appliquee a la main.
    Resultat attendu : Les treize coincident, y compris le plafond des armures intermediaires et l'absence de bonus des armures lourdes.

◆ TEST() [2/7]

TEST ( EquipmentTest ,
LeBouclierAjouteIlNeRemplacePas  )

Le bouclier ajoute, il ne remplace pas.

Cas de test : Un bouclier ajoute son bonus a la classe d'armure, seul ou avec une armure.
Categorie : Unitaire · Equipement
Criticite : Critique
Etapes :
1. Calculer la CA d'un personnage en bouclier seul, puis en harnois et bouclier.
Resultat attendu : Le bouclier seul donne la base sans armure plus la Dexterite plus 2 ; avec le harnois, 18 plus 2.

◆ TEST() [3/7]

TEST ( EquipmentTest ,
LeFiletNInfligeAucunDegat  )

Le filet n'inflige aucun degat, et le catalogue le dit.

Cas de test : Une arme sans degats est chargee sans que des lui soient inventes.
Categorie : Unitaire · Equipement
Criticite : Majeur
Etapes :
1. Charger le filet et une arme ordinaire.
Resultat attendu : Le filet n'a ni des ni type de degats ; la dague a les deux.

◆ TEST() [4/7]

TEST ( EquipmentTest ,
LePoidsDUnInventaireDeDepartCorrespondAuCalculManuel  )

Le poids d'un inventaire de depart correspond au calcul manuel.

Cas de test : Le poids total d'un inventaire de depart egale la somme calculee a la main.
Categorie : Unitaire · Equipement
Criticite : Critique
Etapes :
1. Composer l'inventaire d'un guerrier : cotte de mailles, epee longue, bouclier et deux javelines.

  1. Comparer le total au calcul fait a la main depuis les poids du livre.
    Resultat attendu : 27,5 + 1,5 + 3 + 2 x 1 = 34 kg, soit 34 000 g.

◆ TEST() [5/7]

TEST ( EquipmentTest ,
LesArmesPortentLeurCategorieEtLeurPortee  )

Les armes portent leur categorie et leur portee, qui viennent des intertitres.

Cas de test : Chaque arme porte la categorie et la portee de son intertitre.
Categorie : Unitaire · Equipement
Criticite : Critique
Etapes :
1. Verifier la categorie et la portee de quatre armes, une par groupe du livre.
Resultat attendu : Baton courante au corps a corps, fronde courante a distance, rapiere de guerre au corps a corps, arc long de guerre a distance.

◆ TEST() [6/7]

TEST ( EquipmentTest ,
LesDeuxCataloguesSeChargent  )

Les deux catalogues se chargent sans erreur.

Cas de test : Les armes et les armures livrees se chargent toutes.
Categorie : Unitaire · Equipement
Criticite : Critique
Etapes :
1. Charger weapons/ et armors/.
Resultat attendu : 37 armes, 13 armures, aucune erreur.

◆ TEST() [7/7]

TEST ( EquipmentTest ,
LesTreizeArmuresPortentLesValeursDuLivre  )

Les 13 armures portent les valeurs de la table du livre.

Cas de test : Chaque armure du catalogue porte la CA, le poids et le prix du livre.
Categorie : Unitaire · Equipement
Criticite : Critique
Etapes :
1. Pour les 13 rangees de la table p. 50, comparer categorie, CA de base, plafond de Dexterite, Force exigee, discretion, poids et prix aux valeurs recopiees a la main.
Resultat attendu : Les sept colonnes coincident pour chacune.