Skip to content

fix: add random game to history + modularize even more Room

Laurent Bourgon requested to merge fix/add-random-game-to-history into dev

Les parties en mode aléatoire sont ajoutées dans l'historique dans la vue d'administration. La logique de résultats et de réponses a été déplacée dans leurs "managers" respectifs.

Closes #174 (closed), &18.

Ajouts

  • ResultManager: gère les résultats de la partie.
  • AnswerManager: gère les réponses d'une question. La source de vérité pour l'index de la question actuelle reste encore dans Room.
  • Answer possède maintenant un attribut type pour différencier les réponses des QCM de celles des QRL. Cela permet d'assurer une sécurité des types.

Modifications

  • Les jeux aléatoires sont générés par QuestionBankService. Les questions sont choisies à l'aide d'une requête MongoDB.
  • Lorsque les jeux sont envoyés dans la vue de création de partie, la requête à la base de données pour le jeu aléatoire ne fait que demander la quantité de documents.
  • La méthode AnswerManager.get (anciennement Room.getAnswers) est rendue générique pour éviter l'utilisation de type-casting.

Conséquences

  • Fin du epic &18 sur le mode aléatoire.
  • Diminution significative de la taille de Room (321 -> 236).
  • Encore une fois, il faudra faire attention, car des parties du code ont été déplacées dans d'autres méthodes/d'autres fichiers.

Merge request reports

Loading