0, 'ID positif'); // Vérifier que la carte existe $found = MapModel::findMap($id); assert_true($found !== null, 'Carte trouvée après création'); if ($found) { assert_equal($found->getName(), 'Test Map', 'Nom correct'); assert_equal($found->getWidth(), 5, 'Largeur correcte'); assert_equal($found->getHeight(), 5, 'Hauteur correcte'); } // Test de mise à jour echo "Test mise à jour...\n"; $map->setName('Test Map Updated'); $updated = MapModel::update($id, $map, 'Description mise à jour'); assert_true($updated, 'Mise à jour réussie'); $found = MapModel::findMap($id); if ($found) { assert_equal($found->getName(), 'Test Map Updated', 'Nom mis à jour'); } // Test de suppression echo "Test suppression...\n"; $deleted = MapModel::delete($id); assert_true($deleted, 'Suppression réussie'); $found = MapModel::findMap($id); assert_true($found === null, 'Carte non trouvée après suppression'); } else { echo "FAIL: Échec de création de la carte\n"; } // Test de récupération des statistiques echo "Test statistiques...\n"; $stats = MapModel::getGlobalStats(); assert_true(is_array($stats), 'Statistiques retournent un tableau'); assert_true(isset($stats['total_maps']), 'total_maps présent'); assert_true(isset($stats['average_width']), 'average_width présent'); assert_true(isset($stats['average_height']), 'average_height présent'); // Test de pagination echo "Test pagination...\n"; $result = MapModel::paginate(1, 10); assert_true(is_array($result), 'paginate retourne un tableau'); assert_true(isset($result['data']), 'data présent'); assert_true(isset($result['pagination']), 'pagination présent'); assert_true(isset($result['pagination']['total']), 'total présent'); assert_true(isset($result['pagination']['current_page']), 'current_page présent'); assert_true(isset($result['pagination']['per_page']), 'per_page présent'); assert_true(is_array($result['data']), 'data est un tableau'); echo "Tests MapModel terminés.\n";