You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Ohara_MAUI/Sources/TestConsole/Program.cs

144 lines
3.7 KiB

// See https://aka.ms/new-console-template for more information
using Model.Classes;
using Model.Serializer;
using Model.Managers;
using System.Collections.ObjectModel;
// Tests fonctionnels :
Manager manager = new Manager(new XML_Serializer());
//Tests paramètres du manager :
foreach (Bateau b in manager.Bateaux)
{
Console.WriteLine(b);
}
foreach (Bestiaire b in manager.Bestiaire)
{
Console.WriteLine(b);
}
foreach (Equipage e in manager.Equipages)
{
Console.WriteLine(e);
}
foreach (FruitDuDemon f in manager.Fruits)
{
Console.WriteLine(f);
}
foreach (Personnage p in manager.Personnages)
{
Console.WriteLine(p);
}
Console.WriteLine("\n");
Console.WriteLine("\n");
foreach (Bateau b in manager.Bateaux)
{
manager.ModifierFavBateau(b, false);
}
//Tests serialization :
XML_Serializer serializer = new XML_Serializer();
//Affichage d'un objet à son état initiale
Console.WriteLine(manager.Bateaux[0]);
//Modification de cet objet
manager.ModifierFavBateau(manager.Bateaux[0], true);
Console.WriteLine(manager.Bateaux[0]);
//Serialization de la liste contenant l'objet
serializer.SetBateau(manager.Bateaux.ToList());
//Netoyage de la liste
manager.Bateaux.Clear();
//Deserialization dans la liste
manager.Bateaux = new ObservableCollection<Bateau>(serializer.GetBateaux());
//Affichage de l'objet précedement modifié
Console.WriteLine(manager.Bateaux[0]);
Console.WriteLine("\n");
Console.WriteLine("\n");
//Tests méthode du manager :
foreach (Bateau b in manager.Bateaux)
{
manager.ModifierFavBateau(b, false);
}
//Ajout d'un objet en favoris
manager.ModifierFavBateau(manager.Bateaux[0],true);
foreach (ObjetOhara o in manager.GetFavoris())
{
Console.WriteLine(o.Nom);
}
//Suppréssion d'un objet des favoris
manager.ModifierFavBateau(manager.Bateaux[0], false);
foreach (ObjetOhara o in manager.GetFavoris())
{
Console.WriteLine(o.Nom);
}
Console.WriteLine("\n");
Console.WriteLine("\n");
// Filtre des fruits du démon pour afficher seulement les type "Logia"
foreach (FruitDuDemon f in manager.FiltrerFDD("Logia"))
{
Console.WriteLine(f.Nom+" "+f.Type);
}
Console.WriteLine("\n");
Console.WriteLine("\n");
// Recherche dansune liste de fruit de démon pour afficher les fruits correspondant au mot clé "Nika"
foreach (ObjetOhara f in manager.RechercheObjetOhara("Nika", new List<ObjetOhara>(manager.Fruits)) )
{
Console.WriteLine(f.Nom);
}
Console.WriteLine("\n");
Console.WriteLine("\n");
foreach (Bateau b in manager.Bateaux)
{
manager.ModifierFavBateau(b,true);
}
// Recherche dansune liste de objet ohara pour afficher les objets ohara correspondant au mot clé "Sunny"
foreach (ObjetOhara o in manager.RechercheObjetOhara("Sunny", manager.GetFavoris().ToList()))
{
Console.WriteLine(o.Nom);
}
Console.WriteLine("\n");
Console.WriteLine("\n");
ObservableCollection<Bateau> bateaux = new ObservableCollection<Bateau>(manager.GetBateaux());
foreach(Bateau b in bateaux)
{
Console.WriteLine(b);
}
ObservableCollection<Bestiaire> bestiaire = new ObservableCollection<Bestiaire>(manager.GetBestiaires());
foreach (Bestiaire b in bestiaire)
{
Console.WriteLine(b);
}
ObservableCollection<Equipage> equipage = new ObservableCollection<Equipage>(manager.GetEquipages());
foreach (Equipage e in equipage)
{
Console.WriteLine(e);
}
ObservableCollection<FruitDuDemon> fruits = new ObservableCollection<FruitDuDemon>(manager.GetFruits());
foreach (FruitDuDemon f in fruits)
{
Console.WriteLine(f);
}
ObservableCollection<Personnage> personnages = new ObservableCollection<Personnage>(manager.GetPersonnages());
foreach (Personnage p in personnages)
{
Console.WriteLine(p);
}