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

Tests unitaires du remappage des touches de jeu (GameKeyBindings, EX-CTRL-012). More...

#include <filesystem>
#include <fstream>
#include <gtest/gtest.h>
#include "HMI/Input/GameKeyBindings.h"

Functions

 TEST (GameKeyBindingsTest, ValeursParDefautALaConstruction)
 Les sept actions ont leurs valeurs par défaut (flèches/Espace/Maj/E) à la construction.
 TEST (GameKeyBindingsTest, SetKeySurToucheLibre)
 setKey sur une touche libre lie l'action sans toucher aux autres.
 TEST (GameKeyBindingsTest, SetKeyEchangeSurConflit)
 setKey sur une touche déjà liée à une autre action échange les deux touches.
 TEST (GameKeyBindingsTest, ResetToDefaultsRestaureLesDefauts)
 resetToDefaults restaure les valeurs par défaut après un ou plusieurs remaps.
 TEST (GameKeyBindingsTest, SaveEtLoadAllerRetour)
 Sauvegarder puis recharger préserve un jeu de bindings personnalisé (aller-retour JSON).
 TEST (GameKeyBindingsTest, LoadFichierAbsentRenvoieLesDefauts)
 Charger depuis un fichier absent renvoie les valeurs par défaut, sans erreur.
 TEST (GameKeyBindingsTest, LoadJsonCorrompuRenvoieLesDefauts)
 Charger un fichier JSON corrompu renvoie les valeurs par défaut, sans exception.
 TEST (GameKeyBindingsTest, LoadValeurHorsBornesIgnoree)
 Une valeur hors bornes dans le fichier est ignorée : l'action garde sa valeur par défaut.
 TEST (GameKeyBindingsTest, LoadFichierAnterieurSansInteragirPrendLaValeurParDefaut)
 Un fichier écrit avant ce lot (section « jeu » sans « interagir ») se relit sans erreur, l'action prenant sa valeur par défaut.
 TEST (GameKeyBindingsTest, SavePreserveLaSectionEditeur)
 Sauvegarder les touches de jeu préserve une section « editeur » déjà présente.

Detailed Description

Tests unitaires du remappage des touches de jeu (GameKeyBindings, EX-CTRL-012).

Function Documentation

◆ TEST() [1/10]

TEST ( GameKeyBindingsTest ,
LoadFichierAbsentRenvoieLesDefauts  )

Charger depuis un fichier absent renvoie les valeurs par défaut, sans erreur.

Cas de test : Charger depuis un fichier absent renvoie les valeurs par défaut, sans erreur.
Categorie : Unitaire · Game Key Bindings
Criticite : Majeur
Etapes :
1. Mettre en place le contexte du test (arrangement).
2. Executer le scenario et verifier les assertions.
Resultat attendu : Charger depuis un fichier absent renvoie les valeurs par défaut, sans erreur.

◆ TEST() [2/10]

TEST ( GameKeyBindingsTest ,
LoadFichierAnterieurSansInteragirPrendLaValeurParDefaut  )

Un fichier écrit avant ce lot (section « jeu » sans « interagir ») se relit sans erreur, l'action prenant sa valeur par défaut.

Cas de test : Un fichier écrit avant ce lot (sans « interagir ») se relit sans erreur, l'action prenant sa valeur par défaut.
Categorie : Unitaire · Game Key Bindings
Criticite : Bloquant
Etapes :
1. Mettre en place le contexte du test (arrangement).
2. Executer le scenario et verifier les assertions.
Resultat attendu : Un fichier « jeu » antérieur à LOT-63 (sans « interagir ») se relit sans erreur, Interagir prenant sa touche par défaut (E), et les autres actions restent inchangées.

◆ TEST() [3/10]

TEST ( GameKeyBindingsTest ,
LoadJsonCorrompuRenvoieLesDefauts  )

Charger un fichier JSON corrompu renvoie les valeurs par défaut, sans exception.

Cas de test : Charger un fichier JSON corrompu renvoie les valeurs par défaut, sans exception.
Categorie : Unitaire · Game Key Bindings
Criticite : Majeur
Etapes :
1. Mettre en place le contexte du test (arrangement).
2. Executer le scenario et verifier les assertions.
Resultat attendu : Charger un fichier JSON corrompu renvoie les valeurs par défaut, sans exception.

◆ TEST() [4/10]

TEST ( GameKeyBindingsTest ,
LoadValeurHorsBornesIgnoree  )

Une valeur hors bornes dans le fichier est ignorée : l'action garde sa valeur par défaut.

Cas de test : Une valeur hors bornes dans le fichier est ignorée : l'action garde sa valeur par défaut.
Categorie : Unitaire · Game Key Bindings
Criticite : Mineur
Etapes :
1. Mettre en place le contexte du test (arrangement).
2. Executer le scenario et verifier les assertions.
Resultat attendu : Une valeur hors bornes dans le fichier est ignorée : l'action garde sa valeur par défaut.

◆ TEST() [5/10]

TEST ( GameKeyBindingsTest ,
ResetToDefaultsRestaureLesDefauts  )

resetToDefaults restaure les valeurs par défaut après un ou plusieurs remaps.

Cas de test : resetToDefaults restaure les valeurs par défaut après un ou plusieurs remaps.
Categorie : Unitaire · Game Key Bindings
Criticite : Majeur
Etapes :
1. Mettre en place le contexte du test (arrangement).
2. Executer le scenario et verifier les assertions.
Resultat attendu : resetToDefaults restaure les valeurs par défaut après un ou plusieurs remaps.

◆ TEST() [6/10]

TEST ( GameKeyBindingsTest ,
SaveEtLoadAllerRetour  )

Sauvegarder puis recharger préserve un jeu de bindings personnalisé (aller-retour JSON).

Cas de test : Sauvegarder puis recharger préserve un jeu de bindings personnalisé (aller-retour JSON).
Categorie : Unitaire · Game Key Bindings
Criticite : Majeur
Etapes :
1. Mettre en place le contexte du test (arrangement).
2. Executer le scenario et verifier les assertions.
Resultat attendu : Sauvegarder puis recharger préserve un jeu de bindings personnalisé (aller-retour JSON).

◆ TEST() [7/10]

TEST ( GameKeyBindingsTest ,
SavePreserveLaSectionEditeur  )

Sauvegarder les touches de jeu préserve une section « editeur » déjà présente.

Cas de test : Sauvegarder les touches de jeu préserve une section « editeur » déjà présente.
Categorie : Unitaire · Game Key Bindings
Criticite : Majeur
Etapes :
1. Mettre en place le contexte du test (arrangement).
2. Executer le scenario et verifier les assertions.
Resultat attendu : Sauvegarder les touches de jeu préserve une section « editeur » déjà présente.

◆ TEST() [8/10]

TEST ( GameKeyBindingsTest ,
SetKeyEchangeSurConflit  )

setKey sur une touche déjà liée à une autre action échange les deux touches.

Cas de test : setKey sur une touche déjà liée à une autre action échange les deux touches.
Categorie : Unitaire · Game Key Bindings
Criticite : Majeur
Etapes :
1. Mettre en place le contexte du test (arrangement).
2. Executer le scenario et verifier les assertions.
Resultat attendu : setKey sur une touche déjà liée à une autre action échange les deux touches.

◆ TEST() [9/10]

TEST ( GameKeyBindingsTest ,
SetKeySurToucheLibre  )

setKey sur une touche libre lie l'action sans toucher aux autres.

Cas de test : setKey sur une touche libre lie l'action sans toucher aux autres.
Categorie : Unitaire · Game Key Bindings
Criticite : Majeur
Etapes :
1. Mettre en place le contexte du test (arrangement).
2. Executer le scenario et verifier les assertions.
Resultat attendu : setKey sur une touche libre lie l'action sans toucher aux autres.

◆ TEST() [10/10]

TEST ( GameKeyBindingsTest ,
ValeursParDefautALaConstruction  )

Les sept actions ont leurs valeurs par défaut (flèches/Espace/Maj/E) à la construction.

Cas de test : Les sept actions ont leurs valeurs par défaut (flèches/Espace/Maj/E) à la construction.
Categorie : Unitaire · Game Key Bindings
Criticite : Majeur
Etapes :
1. Mettre en place le contexte du test (arrangement).
2. Executer le scenario et verifier les assertions.
Resultat attendu : Les sept actions ont leurs valeurs par défaut (flèches/Espace/Maj/E) à la construction.