|
JustAnotherDnDGame 0.1.0
Jeu de rôle tactique au d20, vue de dessus, en C++/Qt
|
Tests unitaires de l'état des entrées : fronts clavier/souris et position. More...
Functions | |
| TEST (InputStateTest, FrontMontantClavier) | |
| Une touche passée d'« absente » à « présente » est « pressée » exactement une frame. | |
| TEST (InputStateTest, MaintienClavier) | |
| Une touche restée enfoncée n'est « pressée » qu'à la première frame. | |
| TEST (InputStateTest, FrontDescendantClavier) | |
| Le relâchement d'une touche est détecté « relâchée » pendant exactement une frame. | |
| TEST (InputStateTest, TouchesIndependantes) | |
| Les touches sont indépendantes : un front sur l'une n'affecte pas les autres. | |
| TEST (InputStateTest, BoutonSouris) | |
| Un bouton de souris suit la même logique pressé/cliqué/relâché que les touches. | |
| TEST (InputStateTest, PositionSouris) | |
| La position de la souris reflète le dernier déplacement injecté. | |
| TEST (InputStateTest, MoletteAccumuleEtSeReinitialise) | |
| Les incréments de molette d'une frame s'additionnent et repartent de zéro ensuite. | |
| TEST (InputStateTest, CaracteresTapesAccumulesEtVides) | |
| Les caractères tapés s'accumulent dans l'ordre puis sont vidés à la frame suivante. | |
| TEST (InputStateTest, ManetteSeuleActiveLaTouche) | |
| Un bouton manette seul rend keyDown/keyPressed vrais, comme au clavier (EX-CTRL-002). | |
| TEST (InputStateTest, ClavierEtManetteMemeToucheUnSeulFront) | |
| Clavier et manette combinés sur la même touche ne produisent pas de double front. | |
| TEST (InputStateTest, ManetteRelacheeNeMasquePasLeClavier) | |
| La manette relâchée ne masque jamais une touche clavier réellement maintenue (non-stomping, décision de cadrage LOT-20). | |
| TEST (InputStateTest, GamepadConnecteReecrasable) | |
| gamepadConnected reflète le dernier setGamepadConnected appelé. | |
| TEST (InputStateTest, FrontMontantBoutonManetteBrut) | |
| Un bouton manette (piste brute) passé d'« absent » à « présent » est « pressé » exactement une frame, comme une touche clavier. | |
| TEST (InputStateTest, FrontDescendantBoutonManetteBrut) | |
| Un bouton manette (piste brute) relâché après avoir été enfoncé est « relâché » exactement une frame (LOT-63, action Interagir). | |
| TEST (InputStateTest, PisteBrutIndependanteDeLaFusionKey) | |
| La piste manette brute (GamepadButton) est indépendante de la fusion clavier/manette existante sur Key : l'une n'affecte jamais l'autre. | |
| TEST (InputStateTest, RelacheToutSansFront) | |
| releaseAll() relâche toutes les entrées maintenues sans produire de front « relâchée », évitant les touches « collées » à la perte de focus (Alt+Tab). | |
Tests unitaires de l'état des entrées : fronts clavier/souris et position.
| TEST | ( | InputStateTest | , |
| BoutonSouris | ) |
Un bouton de souris suit la même logique pressé/cliqué/relâché que les touches.
Cas de test : Un bouton de souris suit la même logique pressé/cliqué/relâché que les touches.
Categorie : Unitaire · Input State
Criticite : Majeur
Etapes :
1. Mettre en place le contexte du test (arrangement).
2. Executer le scenario et verifier les assertions.
Resultat attendu : Un bouton de souris suit la même logique pressé/cliqué/relâché que les touches.
| TEST | ( | InputStateTest | , |
| CaracteresTapesAccumulesEtVides | ) |
Les caractères tapés s'accumulent dans l'ordre puis sont vidés à la frame suivante.
Cas de test : Les caractères tapés s'accumulent dans l'ordre puis sont vidés à la frame suivante.
Categorie : Unitaire · Input State
Criticite : Majeur
Etapes :
1. Mettre en place le contexte du test (arrangement).
2. Executer le scenario et verifier les assertions.
Resultat attendu : Les caractères tapés s'accumulent dans l'ordre puis sont vidés à la frame suivante.
| TEST | ( | InputStateTest | , |
| ClavierEtManetteMemeToucheUnSeulFront | ) |
Clavier et manette combinés sur la même touche ne produisent pas de double front.
Cas de test : Clavier et manette combinés sur la même touche ne produisent pas de double front.
Categorie : Unitaire · Input State
Criticite : Majeur
Etapes :
1. Mettre en place le contexte du test (arrangement).
2. Executer le scenario et verifier les assertions.
Resultat attendu : Clavier et manette combinés sur la même touche ne produisent pas de double front.
| TEST | ( | InputStateTest | , |
| FrontDescendantBoutonManetteBrut | ) |
Un bouton manette (piste brute) relâché après avoir été enfoncé est « relâché » exactement une frame (LOT-63, action Interagir).
Cas de test : Un bouton manette (piste brute) est « relâché » exactement une frame.
Categorie : Unitaire · Input State
Criticite : Majeur
Etapes :
1. Mettre en place le contexte du test (arrangement).
2. Executer le scenario et verifier les assertions.
Resultat attendu : gamepadButtonReleased est vrai la frame où le bouton passe d'enfoncé à relâché, faux avant et après.
| TEST | ( | InputStateTest | , |
| FrontDescendantClavier | ) |
Le relâchement d'une touche est détecté « relâchée » pendant exactement une frame.
Cas de test : Le relâchement d'une touche est détecté « relâchée » pendant exactement une frame.
Categorie : Unitaire · Input State
Criticite : Majeur
Etapes :
1. Mettre en place le contexte du test (arrangement).
2. Executer le scenario et verifier les assertions.
Resultat attendu : Le relâchement d'une touche est détecté « relâchée » pendant exactement une frame.
| TEST | ( | InputStateTest | , |
| FrontMontantBoutonManetteBrut | ) |
Un bouton manette (piste brute) passé d'« absent » à « présent » est « pressé » exactement une frame, comme une touche clavier.
Cas de test : Un bouton manette (piste brute) est « pressé » exactement une frame.
Categorie : Unitaire · Input State
Criticite : Majeur
Etapes :
1. Mettre en place le contexte du test (arrangement).
2. Executer le scenario et verifier les assertions.
Resultat attendu : Un bouton manette (piste brute) est « pressé » exactement une frame.
| TEST | ( | InputStateTest | , |
| FrontMontantClavier | ) |
Une touche passée d'« absente » à « présente » est « pressée » exactement une frame.
Cas de test : Une touche passée d'« absente » à « présente » est « pressée » exactement une frame.
Categorie : Unitaire · Input State
Criticite : Majeur
Etapes :
1. Mettre en place le contexte du test (arrangement).
2. Executer le scenario et verifier les assertions.
Resultat attendu : Une touche passée d'« absente » à « présente » est « pressée » exactement une frame.
| TEST | ( | InputStateTest | , |
| GamepadConnecteReecrasable | ) |
gamepadConnected reflète le dernier setGamepadConnected appelé.
Cas de test : gamepadConnected reflète le dernier setGamepadConnected appelé.
Categorie : Unitaire · Input State
Criticite : Mineur
Etapes :
1. Mettre en place le contexte du test (arrangement).
2. Executer le scenario et verifier les assertions.
Resultat attendu : gamepadConnected reflète le dernier setGamepadConnected appelé.
| TEST | ( | InputStateTest | , |
| MaintienClavier | ) |
Une touche restée enfoncée n'est « pressée » qu'à la première frame.
Cas de test : Une touche restée enfoncée n'est « pressée » qu'à la première frame.
Categorie : Unitaire · Input State
Criticite : Majeur
Etapes :
1. Mettre en place le contexte du test (arrangement).
2. Executer le scenario et verifier les assertions.
Resultat attendu : Une touche restée enfoncée n'est « pressée » qu'à la première frame.
| TEST | ( | InputStateTest | , |
| ManetteRelacheeNeMasquePasLeClavier | ) |
La manette relâchée ne masque jamais une touche clavier réellement maintenue (non-stomping, décision de cadrage LOT-20).
Cas de test : La manette relâchée ne masque jamais une touche clavier réellement maintenue.
Categorie : Unitaire · Input State
Criticite : Majeur
Etapes :
1. Mettre en place le contexte du test (arrangement).
2. Executer le scenario et verifier les assertions.
Resultat attendu : La manette relâchée ne masque jamais une touche clavier réellement maintenue.
| TEST | ( | InputStateTest | , |
| ManetteSeuleActiveLaTouche | ) |
Un bouton manette seul rend keyDown/keyPressed vrais, comme au clavier (EX-CTRL-002).
Cas de test : Un bouton manette seul rend keyDown/keyPressed vrais, comme au clavier.
Categorie : Unitaire · Input State
Criticite : Majeur
Etapes :
1. Mettre en place le contexte du test (arrangement).
2. Executer le scenario et verifier les assertions.
Resultat attendu : Un bouton manette seul rend keyDown/keyPressed vrais, comme au clavier.
| TEST | ( | InputStateTest | , |
| MoletteAccumuleEtSeReinitialise | ) |
Les incréments de molette d'une frame s'additionnent et repartent de zéro ensuite.
Cas de test : Les incréments de molette d'une frame s'additionnent et repartent de zéro ensuite.
Categorie : Unitaire · Input State
Criticite : Majeur
Etapes :
1. Mettre en place le contexte du test (arrangement).
2. Executer le scenario et verifier les assertions.
Resultat attendu : Les incréments de molette d'une frame s'additionnent et repartent de zéro ensuite.
| TEST | ( | InputStateTest | , |
| PisteBrutIndependanteDeLaFusionKey | ) |
La piste manette brute (GamepadButton) est indépendante de la fusion clavier/manette existante sur Key : l'une n'affecte jamais l'autre.
Cas de test : La piste manette brute est indépendante de la fusion clavier/manette sur Key.
Categorie : Unitaire · Input State
Criticite : Majeur
Etapes :
1. Mettre en place le contexte du test (arrangement).
2. Executer le scenario et verifier les assertions.
Resultat attendu : La piste manette brute est indépendante de la fusion clavier/manette sur Key.
| TEST | ( | InputStateTest | , |
| PositionSouris | ) |
La position de la souris reflète le dernier déplacement injecté.
Cas de test : La position de la souris reflète le dernier déplacement injecté.
Categorie : Unitaire · Input State
Criticite : Majeur
Etapes :
1. Mettre en place le contexte du test (arrangement).
2. Executer le scenario et verifier les assertions.
Resultat attendu : La position de la souris reflète le dernier déplacement injecté.
| TEST | ( | InputStateTest | , |
| RelacheToutSansFront | ) |
releaseAll() relâche toutes les entrées maintenues sans produire de front « relâchée », évitant les touches « collées » à la perte de focus (Alt+Tab).
Cas de test : releaseAll relâche tout sans produire de front « relâchée ».
Categorie : Unitaire · Input State
Criticite : Majeur
Etapes :
1. Maintenir des entrées clavier/manette/souris.
2. Appeler releaseAll et verifier qu'aucune n'est plus enfoncee ni signalee « relâchée ».
Resultat attendu : Toutes les entrees sont relachees, sans aucun front.
| TEST | ( | InputStateTest | , |
| TouchesIndependantes | ) |
Les touches sont indépendantes : un front sur l'une n'affecte pas les autres.
Cas de test : Les touches sont indépendantes : un front sur l'une n'affecte pas les autres.
Categorie : Unitaire · Input State
Criticite : Majeur
Etapes :
1. Mettre en place le contexte du test (arrangement).
2. Executer le scenario et verifier les assertions.
Resultat attendu : Les touches sont indépendantes : un front sur l'une n'affecte pas les autres.