diff --git a/Sources/Console/ConsoleProgram.cs b/Sources/Console/ConsoleProgram.cs new file mode 100644 index 0000000..1363d8a --- /dev/null +++ b/Sources/Console/ConsoleProgram.cs @@ -0,0 +1,95 @@ +using Model; +using Model.Stub; + +namespace Console +{ + public class ConsoleProgram + { + public static IDataManager DataManager = new StubManager(); + + public static Manager Manager = new(DataManager); + + public static Playlist p1 = Manager.Playlists.First(); + + public static Title? current = p1.GetCurrentTitle(); + + public static void Main() + { + Manager.AddPlaylist(new Playlist("MegaTeuf", "DescPlaylist", "ImagePlaylist")); + + System.Console.WriteLine(current?.Name); + + Next(2); + + p1.AddTitle(new CustomTitle("Nouveau", "img.png", "infos", "path.mp3")); + p1.Shuffle = true; + + Separator(); + + Next(5); + + Separator(); + + Previous(5); + + Separator(); + + Next(2); + + Separator(); + + Previous(10); + + Manager.LoadSerialization(); + + DisplaySerialization(Manager.GetPlaylists()); + DisplaySerialization(Manager.GetAlbums()); + DisplaySerialization(Manager.GetArtists()); + DisplaySerialization(Manager.GetCustomTitles()); + DisplaySerialization(Manager.GetInfoTitles()); + + Artist newArtist = new(); + Manager.AddArtist(newArtist); + Manager.AddAlbum(new Album("Nouvel album", "nouveau.png", newArtist, "nouvelle desc", "nouvelles infos")); + + Separator(); + + DisplaySerialization(Manager.GetAlbums()); + + Manager.SaveSerialization(); + } + + public static void Next(int n) + { + for (int i = 0; i < n; i++) + { + p1.NextTitle(); + current = p1.GetCurrentTitle(); + System.Console.WriteLine(current?.Name); + } + } + + public static void Previous(int n) + { + for (int i = 0; i < n; i++) + { + p1.PreviousTitle(); + current = p1.GetCurrentTitle(); + System.Console.WriteLine(current?.Name); + } + } + + public static void DisplaySerialization(IEnumerable objects) + { + foreach (var obj in objects) + { + System.Console.WriteLine(obj); + } + } + + public static void Separator() + { + System.Console.WriteLine("--------------------"); + } + } +} \ No newline at end of file diff --git a/Sources/Console/Program.cs b/Sources/Console/Program.cs deleted file mode 100644 index de10b61..0000000 --- a/Sources/Console/Program.cs +++ /dev/null @@ -1,137 +0,0 @@ -using Model; -using Model.Serialization; -using Model.Stub; - -IDataManager DataManager = new StubManager(); - -Manager Manager = new Manager(DataManager); - -Manager.AddPlaylist(new Playlist("MegaTeuf", "DescPlaylist", "ImagePlaylist")); - -Playlist p1 = Manager.Playlists.First(); - -Title? current = p1.GetCurrentTitle(); -Console.WriteLine(current?.Name); - -p1.NextTitle(); -current = p1.GetCurrentTitle(); -Console.WriteLine(current?.Name); - -p1.PreviousTitle(); -current = p1.GetCurrentTitle(); -Console.WriteLine(current?.Name); - -p1.AddTitle(new CustomTitle("Nouveau", "img.png", "infos", "path.mp3")); -p1.Shuffle = true; -Console.WriteLine("--------------------"); - -p1.NextTitle(); -current = p1.GetCurrentTitle(); -Console.WriteLine(current?.Name); -p1.NextTitle(); -current = p1.GetCurrentTitle(); -Console.WriteLine(current?.Name); -p1.NextTitle(); -current = p1.GetCurrentTitle(); -Console.WriteLine(current?.Name); -p1.NextTitle(); -current = p1.GetCurrentTitle(); -Console.WriteLine(current?.Name); -p1.NextTitle(); -current = p1.GetCurrentTitle(); -Console.WriteLine(current?.Name); - - -Console.WriteLine("--------------------"); - -p1.PreviousTitle(); -current = p1.GetCurrentTitle(); -Console.WriteLine(current?.Name); -p1.PreviousTitle(); -current = p1.GetCurrentTitle(); -Console.WriteLine(current?.Name); -p1.PreviousTitle(); -current = p1.GetCurrentTitle(); -Console.WriteLine(current?.Name); -p1.PreviousTitle(); -current = p1.GetCurrentTitle(); -Console.WriteLine(current?.Name); -p1.PreviousTitle(); -current = p1.GetCurrentTitle(); -Console.WriteLine(current?.Name); - -Console.WriteLine("--------------------"); - -p1.NextTitle(); -current = p1.GetCurrentTitle(); -Console.WriteLine(current?.Name); -p1.NextTitle(); -current = p1.GetCurrentTitle(); -Console.WriteLine(current?.Name); - -// Quand aléatoire et que retour arrière puis retour avant, musique aléatoire et non celle de base - -Console.WriteLine("--------------------"); - -p1.PreviousTitle(); -current = p1.GetCurrentTitle(); -Console.WriteLine(current?.Name); -p1.PreviousTitle(); -current = p1.GetCurrentTitle(); -Console.WriteLine(current?.Name); -p1.PreviousTitle(); -current = p1.GetCurrentTitle(); -Console.WriteLine(current?.Name); -p1.PreviousTitle(); -current = p1.GetCurrentTitle(); -Console.WriteLine(current?.Name); -p1.PreviousTitle(); -current = p1.GetCurrentTitle(); -Console.WriteLine(current?.Name); - -p1.PreviousTitle(); -current = p1.GetCurrentTitle(); -Console.WriteLine(current?.Name); -p1.PreviousTitle(); -current = p1.GetCurrentTitle(); -Console.WriteLine(current?.Name); -p1.PreviousTitle(); -current = p1.GetCurrentTitle(); -Console.WriteLine(current?.Name); -p1.PreviousTitle(); -current = p1.GetCurrentTitle(); -Console.WriteLine(current?.Name); -p1.PreviousTitle(); -current = p1.GetCurrentTitle(); -Console.WriteLine(current?.Name); - -Manager.LoadSerialization(); -foreach (var p in Manager.GetPlaylists()) -{ - Console.WriteLine(p.Name); -} -foreach (var a in Manager.GetAlbums()) -{ - Console.WriteLine(a.Name); -} -foreach (var a in Manager.GetArtists()) -{ - Console.WriteLine(a.Name); -} -foreach (var ct in Manager.GetCustomTitles()) -{ - Console.WriteLine(ct.Name); -} -foreach (var it in Manager.GetInfoTitles()) -{ - Console.WriteLine(it.Name); -} -Artist newArtist = new Artist(); -Manager.AddArtist(newArtist); -Manager.AddAlbum(new Album("Nouvel album", "nouveau.png", newArtist, "nouvelle desc", "nouvelles infos")); -Console.WriteLine("------"); -foreach (var a in Manager.GetAlbums()) -{ - Console.WriteLine(a.Name); -} -Manager.SaveSerialization(); \ No newline at end of file diff --git a/Sources/TestUnitaires/TU_Program.cs b/Sources/TestUnitaires/TU_Program.cs new file mode 100644 index 0000000..f19994e --- /dev/null +++ b/Sources/TestUnitaires/TU_Program.cs @@ -0,0 +1,16 @@ +namespace TestUnitaires +{ + public class TU_Program + { + [Fact] + public void TU_Methods() + { + List a = new() { new Model.Artist("artiste"), new Model.Artist("") }; + Console.ConsoleProgram.Main(); + Console.ConsoleProgram.Next(1); + Console.ConsoleProgram.Previous(1); + Console.ConsoleProgram.Separator(); + Console.ConsoleProgram.DisplaySerialization(a); + } + } +} diff --git a/Sources/TestUnitaires/TestUnitaires.csproj b/Sources/TestUnitaires/TestUnitaires.csproj index ec9d410..6462710 100644 --- a/Sources/TestUnitaires/TestUnitaires.csproj +++ b/Sources/TestUnitaires/TestUnitaires.csproj @@ -22,6 +22,7 @@ +