From 10c4e09531eb4dd33bd8f6cfff78fa6e4966dfaf Mon Sep 17 00:00:00 2001 From: ADato88 Date: Wed, 26 Jan 2022 13:14:26 +0100 Subject: [PATCH] AblagestapelZusammenstellenTest erstellt --- .../MiniGames/Client/ViewModel/Uno.cs | 17 ++++- BlazorSolution/MiniGamesTests/UnoTest.cs | 69 +++++++++++-------- 2 files changed, 56 insertions(+), 30 deletions(-) diff --git a/BlazorSolution/MiniGames/Client/ViewModel/Uno.cs b/BlazorSolution/MiniGames/Client/ViewModel/Uno.cs index a897728..d73610e 100644 --- a/BlazorSolution/MiniGames/Client/ViewModel/Uno.cs +++ b/BlazorSolution/MiniGames/Client/ViewModel/Uno.cs @@ -37,7 +37,7 @@ namespace MiniGames.Client.ViewModel stapelModel.KartenModels = new(); for (int f = 1; f <= 4; f++) { - for (int k = 1; k <= 9; k++) + for (int k = 1; k <= 19; k++) { var kartenbezeichnung = (Kartenbezeichnung)k; var kartenfarbe = (Farbe)f; @@ -106,5 +106,20 @@ namespace MiniGames.Client.ViewModel return stapelModel; } + + public static StapelModel AblagestapelZusammenstellen() + { + var standardKarten = Uno.ErstelleStandardKarten(); + var spezialKarten = Uno.ErstelleFarbigeSpezialKarten(); + var jokerKarten = Uno.ErstelleJokerKarten(); + + StapelModel stapelModel = new(); + stapelModel.KartenModels = new(); + stapelModel.KartenModels.AddRange(standardKarten.KartenModels); + stapelModel.KartenModels.AddRange(spezialKarten.KartenModels); + stapelModel.KartenModels.AddRange(jokerKarten.KartenModels); + + return stapelModel; + } } } diff --git a/BlazorSolution/MiniGamesTests/UnoTest.cs b/BlazorSolution/MiniGamesTests/UnoTest.cs index e7dc213..f6d7e4e 100644 --- a/BlazorSolution/MiniGamesTests/UnoTest.cs +++ b/BlazorSolution/MiniGamesTests/UnoTest.cs @@ -120,19 +120,20 @@ namespace MiniGamesTests } [Theory] - [InlineData((Kartenbezeichnung)2, Farbe.Gelb, false)] - [InlineData((Kartenbezeichnung)7, Farbe.Blau, false)] - [InlineData((Kartenbezeichnung)9, Farbe.Gruen, false)] - [InlineData((Kartenbezeichnung)4, Farbe.Rot, false)] - [InlineData((Kartenbezeichnung)5, Farbe.Blau, false)] - [InlineData((Kartenbezeichnung)9, Farbe.Gelb, false)] - [InlineData((Kartenbezeichnung)6, Farbe.Gruen, false)] - private void ErstelleStandardKartenTest(Kartenbezeichnung kartenbezeichnung, Farbe farbe, bool spezial) + [InlineData((Kartenbezeichnung)2, Farbe.Gelb, false, 19)] + [InlineData((Kartenbezeichnung)7, Farbe.Blau, false, 19)] + [InlineData((Kartenbezeichnung)9, Farbe.Gruen, false, 19)] + [InlineData((Kartenbezeichnung)4, Farbe.Rot, false, 19)] + [InlineData((Kartenbezeichnung)5, Farbe.Blau, false, 19)] + [InlineData((Kartenbezeichnung)9, Farbe.Gelb, false, 19)] + [InlineData((Kartenbezeichnung)6, Farbe.Gruen, false, 19)] + private void ErstelleStandardKartenTest(Kartenbezeichnung kartenbezeichnung, Farbe farbe, bool spezial, int anzahl) { //arrange var _kartenbezeichnung = kartenbezeichnung.ToString(); var _farbe = farbe.ToString(); var _spezial = spezial; + var _anzahl = anzahl; var erwartet = BeispielKarte(_kartenbezeichnung, _farbe, _spezial); //act @@ -143,10 +144,10 @@ namespace MiniGamesTests var anzahlGelb = neuesDeck.KartenModels.Where(x => x.Farbe.Equals(Farbe.Gelb.ToString())).Count(); //assert - Assert.Equal(9, anzahlBlau); - Assert.Equal(9, anzahlRot); - Assert.Equal(9, anzahlGruen); - Assert.Equal(9, anzahlGelb); + Assert.Equal(_anzahl, anzahlBlau); + Assert.Equal(_anzahl, anzahlRot); + Assert.Equal(_anzahl, anzahlGruen); + Assert.Equal(_anzahl, anzahlGelb); Assert.Contains(neuesDeck.KartenModels, n => n.Name.Equals(erwartet.Name) && @@ -156,20 +157,21 @@ namespace MiniGamesTests } [Theory] - [InlineData(Kartenbezeichnung.PlusZweiKarte, Farbe.Gelb, true)] - [InlineData(Kartenbezeichnung.RetoureKarte, Farbe.Rot, true)] - [InlineData(Kartenbezeichnung.AussetzenKarte, Farbe.Gelb, true)] - [InlineData(Kartenbezeichnung.PlusZweiKarte, Farbe.Blau, true)] - [InlineData(Kartenbezeichnung.PlusZweiKarte, Farbe.Gruen, true)] - [InlineData(Kartenbezeichnung.RetoureKarte, Farbe.Gelb, true)] - [InlineData(Kartenbezeichnung.AussetzenKarte, Farbe.Gruen, true)] - [InlineData(Kartenbezeichnung.PlusZweiKarte, Farbe.Rot, true)] - private void ErstelleFarbigeSpezialKartenTest(Kartenbezeichnung kartenbezeichnung, Farbe farbe, bool spezial) + [InlineData(Kartenbezeichnung.PlusZweiKarte, Farbe.Gelb, true, 6)] + [InlineData(Kartenbezeichnung.RetoureKarte, Farbe.Rot, true, 6)] + [InlineData(Kartenbezeichnung.AussetzenKarte, Farbe.Gelb, true, 6)] + [InlineData(Kartenbezeichnung.PlusZweiKarte, Farbe.Blau, true, 6)] + [InlineData(Kartenbezeichnung.PlusZweiKarte, Farbe.Gruen, true, 6)] + [InlineData(Kartenbezeichnung.RetoureKarte, Farbe.Gelb, true, 6)] + [InlineData(Kartenbezeichnung.AussetzenKarte, Farbe.Gruen, true, 6)] + [InlineData(Kartenbezeichnung.PlusZweiKarte, Farbe.Rot, true, 6)] + private void ErstelleFarbigeSpezialKartenTest(Kartenbezeichnung kartenbezeichnung, Farbe farbe, bool spezial, int anzahl) { //arrange var _kartenbezeichnung = kartenbezeichnung.ToString(); var _farbe = farbe.ToString(); var _spezial = spezial; + var _anzahl = anzahl; var erwartet = BeispielKarte(_kartenbezeichnung, _farbe, _spezial); //act @@ -181,10 +183,10 @@ namespace MiniGamesTests //assert - Assert.Equal(6, anzahlBlau); - Assert.Equal(6, anzahlRot); - Assert.Equal(6, anzahlGruen); - Assert.Equal(6, anzahlGelb); + Assert.Equal(_anzahl, anzahlBlau); + Assert.Equal(_anzahl, anzahlRot); + Assert.Equal(_anzahl, anzahlGruen); + Assert.Equal(_anzahl, anzahlGelb); Assert.Contains(neuesDeck.KartenModels, n => n.Name.Equals(erwartet.Name) && @@ -194,14 +196,15 @@ namespace MiniGamesTests } [Theory] - [InlineData(Kartenbezeichnung.FarbwahlKarte, Farbe.Keine, true)] - [InlineData(Kartenbezeichnung.ZiehVierFarbenwahlkarte, Farbe.Keine, true)] - private void ErstelleJokerKartenTest(Kartenbezeichnung kartenbezeichnung, Farbe farbe, bool spezial) + [InlineData(Kartenbezeichnung.FarbwahlKarte, Farbe.Keine, true, 4)] + [InlineData(Kartenbezeichnung.ZiehVierFarbenwahlkarte, Farbe.Keine, true, 4)] + private void ErstelleJokerKartenTest(Kartenbezeichnung kartenbezeichnung, Farbe farbe, bool spezial, int anzahl) { //arrange var _kartenbezeichnung = kartenbezeichnung.ToString(); var _farbe = farbe.ToString(); var _spezial = spezial; + var _anzahl = anzahl; var erwartet = BeispielKarte(_kartenbezeichnung, _farbe, _spezial); //act @@ -209,12 +212,20 @@ namespace MiniGamesTests var ergebnisAnzahl = neuesDeck.KartenModels.Where(x => x.Name.Equals(kartenbezeichnung.ToString())).Count(); //assert - Assert.Equal(4, ergebnisAnzahl); + Assert.Equal(_anzahl, ergebnisAnzahl); Assert.Contains(neuesDeck.KartenModels, n => n.Name.Equals(erwartet.Name) && n.Farbe.Equals(erwartet.Farbe) && n.Spezial == erwartet.Spezial ); } + + [Fact] + private void AblagestapelZusammenstellenTest() + { + var ergebnis = Uno.AblagestapelZusammenstellen(); + + Assert.Equal(108, ergebnis.KartenModels.Count()); + } } }