diff --git a/BlazorSolution/MiniGames/Client/ViewModel/Uno.cs b/BlazorSolution/MiniGames/Client/ViewModel/Uno.cs index 49acfc6..924ee08 100644 --- a/BlazorSolution/MiniGames/Client/ViewModel/Uno.cs +++ b/BlazorSolution/MiniGames/Client/ViewModel/Uno.cs @@ -1,6 +1,5 @@ using MiniGames.Shared.Enums; using MiniGames.Shared.Models; -using System; using System.Collections.Generic; using System.Linq; @@ -12,6 +11,7 @@ namespace MiniGames.Client.ViewModel public StapelModel ZiehKartenStapel { get; set; } = new(); public List Spieler { get; set; } = new(); public int NaechsterSpielerId { get; set; } + public bool Uhrzeigersinn { get; set; } public bool IstAblageStapelFarbeGleichZuLegendeKarte(string neueKarteFarbe) { @@ -42,7 +42,9 @@ namespace MiniGames.Client.ViewModel public void KarteAufStapelLegen(int id, KartenModel zuLegendeKarte) { - int _id = id; + NaechsterSpielerWahl(id, Uhrzeigersinn); + int _naechstenId = NaechsterSpielerId; + StapelModel _stapelModel = new(); _stapelModel.KartenModels = new(); const string _plusZweiKarte = "PlusZweiKarte"; @@ -59,7 +61,7 @@ namespace MiniGames.Client.ViewModel case _plusZweiKarte: for (int i = 0; i < 2; i++) { - ZiehEineKarte(_id); + ZiehEineKarte(_naechstenId); } break; case _retoureKarte: @@ -88,7 +90,7 @@ namespace MiniGames.Client.ViewModel }); } - public void SpielerWahl(int aktuellerSpielerId, bool uhrZeigerSinn) + public void NaechsterSpielerWahl(int aktuellerSpielerId, bool uhrZeigerSinn) { var aktuellerSpielerIndex = Spieler.FindIndex(x => x.SpielerModel.Id == aktuellerSpielerId); if (uhrZeigerSinn) diff --git a/BlazorSolution/MiniGamesTests/UnoTest.cs b/BlazorSolution/MiniGamesTests/UnoTest.cs index 2df4723..f69ac28 100644 --- a/BlazorSolution/MiniGamesTests/UnoTest.cs +++ b/BlazorSolution/MiniGamesTests/UnoTest.cs @@ -219,7 +219,7 @@ namespace MiniGamesTests UnoRegeln.SpielerErstellen(_spielerEinsName); UnoRegeln.SpielerErstellen(_spielerZweiName); UnoRegeln.SpielerErstellen(_spielerDreiName); - UnoRegeln.SpielerWahl(_aktuellerSpieler, _uhrZeigerSinn); + UnoRegeln.NaechsterSpielerWahl(_aktuellerSpieler, _uhrZeigerSinn); //assert Assert.Equal(_naechsterErwartung, UnoRegeln.NaechsterSpielerId); @@ -304,20 +304,26 @@ namespace MiniGamesTests { //arrange UnoRegeln.ZiehKartenStapelZusammenstellen(); - var kartenAblageStapel = UnoRegeln.KartenAblageStapel; - var ziehKartenStapel = UnoRegeln.ZiehKartenStapel; + BeispielMultipleSpielerModelsFüllen(3); + + foreach (var spieler in SpielerModels) + { + UnoRegeln.SpielerErstellen(spieler.SpielerName); + } + + var nachstenSpielerKartenAnzahlErwartet = 2; var _kartenbezeichnung = kartenbezeichnung.ToString(); var _farbe = farbe.ToString(); var _spezial = spezial; - var naechstenHand = BeispielHand(); var beispielZuLegendeKarte = BeispielKarte(_kartenbezeichnung, _farbe, _spezial); //act - //naechstenHand.KartenModels = UnoRegeln.KarteAufStapelLegen(naechstenHand.KartenModels, beispielZuLegendeKarte); + UnoRegeln.KarteAufStapelLegen(UnoRegeln.Spieler[0].SpielerModel.Id, beispielZuLegendeKarte); //assert + Assert.Equal(nachstenSpielerKartenAnzahlErwartet, UnoRegeln.Spieler[2].KartenModels.Count()); } #region Stapel erstellen