test_Cell.cpp - JulianKerignard/ProjetJeuDeLaVie_POO GitHub Wiki
test_Cell.cpp
Fichier Description
Ce fichier contient des tests unitaires pour la classe Cell
en utilisant GoogleTest. Les tests vérifient les fonctionnalités de base de la classe Cell
, y compris les états par défaut, la modification et l'obtention des états, et la gestion des cellules obstacles.
Tests
1. CellTest, DefaultState
Test pour vérifier l'état par défaut d'une cellule.
TEST(CellTest, DefaultState) {
Cell cell;
EXPECT_EQ(cell.getCurrentState(), CellState::DEAD);
EXPECT_FALSE(cell.isObstacleCell());
}
- Objectif : Vérifier que l'état initial d'une cellule est
DEAD
et qu'elle n'est pas un obstacle. - Assertions :
EXPECT_EQ(cell.getCurrentState(), CellState::DEAD)
: Vérifie que l'état actuel de la cellule estDEAD
.EXPECT_FALSE(cell.isObstacleCell())
: Vérifie que la cellule n'est pas un obstacle.
2. CellTest, SetAndGetState
Test pour vérifier la modification et l'obtention de l'état d'une cellule.
TEST(CellTest, SetAndGetState) {
Cell cell;
cell.setNextState(CellState::ALIVE);
cell.updateState();
EXPECT_EQ(cell.getCurrentState(), CellState::ALIVE);
cell.setNextState(CellState::DEAD);
cell.updateState();
EXPECT_EQ(cell.getCurrentState(), CellState::DEAD);
}
- Objectif : Vérifier que l'état d'une cellule peut être modifié et obtenu correctement.
- Assertions :
EXPECT_EQ(cell.getCurrentState(), CellState::ALIVE)
: Vérifie que l'état actuel de la cellule estALIVE
après l'avoir défini et mis à jour.EXPECT_EQ(cell.getCurrentState(), CellState::DEAD)
: Vérifie que l'état actuel de la cellule estDEAD
après l'avoir redéfini et mis à jour.
3. CellTest, ObstacleCell
Test pour vérifier la gestion des cellules obstacles.
TEST(CellTest, ObstacleCell) {
Cell cell;
cell.setObstacle(true);
EXPECT_TRUE(cell.isObstacleCell());
cell.setObstacle(false);
EXPECT_FALSE(cell.isObstacleCell());
}
- Objectif : Vérifier que le statut d'obstacle d'une cellule peut être défini et obtenu correctement.
- Assertions :
EXPECT_TRUE(cell.isObstacleCell())
: Vérifie que la cellule est un obstacle après l'avoir définie comme telle.EXPECT_FALSE(cell.isObstacleCell())
: Vérifie que la cellule n'est plus un obstacle après avoir retiré son statut d'obstacle.
Conclusion
☝️🤓Ces tests unitaires garantissent que la classe Cell
fonctionne comme prévu en termes de gestion de l'état et du statut d'obstacle des cellules. En utilisant GoogleTest, ces tests fournissent une validation automatique et fiable des fonctionnalités de base de la classe.☝️🤓