using CoreLibrary; using CoreLibrary.Joueurs; using CoreLibrary.Persistance; using CoreLibrary.Regles; using System.Diagnostics.CodeAnalysis; namespace Persistance.Persistance { /// /// Classe PersistanceStub, implémentant l'interface IPersistance, pour la persistance des données en brut dans le code. /// [ExcludeFromCodeCoverage] public class PersistanceStub : IPersistance { /// /// En fonction du type T, renvoie une liste d'éléments. /// /// Renvoie un tableau de tous les éléments chargés. public T[] Charger() where T : IEstPersistant { if (typeof(T).Equals(typeof(Joueur))) { return [ (T)(object)new Joueur("Céleste"), (T)(object)new Joueur("Pauline"), (T)(object)new Joueur("Camille") ]; } if (typeof(T).Equals(typeof(Partie))) { return [ (T)(object)new Partie(new ReglesClassiques()), (T)(object)new Partie(new ReglesDifficiles()) ]; } return Array.Empty(); } /// /// Enregistre les éléments spécifiés dans le fichier de sauvegarde au format JSON. /// /// Elements à enregistrer dans le fichier de sauvegarde. [SuppressMessage("CodeQuality", "S1186:Methods should not be empty", Justification = "Cette méthode est laissée vide volontairement.")] public void Enregistrer(T[] elements) where T : IEstPersistant { } } }