Tests
tilttek/loot-tablesLes tests de la bibliothèque
composer install
vendor/bin/phpunit --no-configuration tests
La suite vérifie les limites de chaque valeur, la révélation contre des germes connus, chaque champ d'une preuve
altérée, les codes de chaque dé du d2 au d20, et les textes de tirage. Dans le monodépôt, Infection maintient la
bibliothèque à 100 % des mutants couverts. Deux cibles de fuzzing nourrissent les lecteurs des codes de boutique et des
textes de tirage avec n'importe quelle entrée : ce qui se lit se réécrit en le même code ou les mêmes faces, et tout le
reste est refusé avec InvalidCode.
composer fuzz -- shop-code draw-text
Les bancs d'essai mesurent la révélation et la vérification d'une boîte de dix tables d20, ainsi que l'écriture et la lecture des codes.
Tester du code qui utilise la bibliothèque
Un moteur avec germe donne le même germe à chaque exécution : PendingDraw::open(new Randomizer(new Xoshiro256StarStar(1))),
ou PendingDraw::restore() avec un germe fixe. Les faces que donne un germe ne changent jamais, puisque les dés de
tilttek/dice reposent sur les moteurs avec germe de PHP. Les résultats de faces choisies viennent de
LootResult::ofFaces().