Browse Source

neuer RetoureKarteAufStapelLegenTest

feature/uno
ADato88 2 years ago
parent
commit
113047b318
  1. 3
      BlazorSolution/MiniGames/Client/ViewModel/Uno.cs
  2. 31
      BlazorSolution/MiniGamesTests/UnoTest.cs

3
BlazorSolution/MiniGames/Client/ViewModel/Uno.cs

@ -65,6 +65,9 @@ namespace MiniGames.Client.ViewModel
}
break;
case _retoureKarte:
Uhrzeigersinn = !Uhrzeigersinn;
NaechsterSpielerWahl(id, Uhrzeigersinn);
_naechstenId = NaechsterSpielerId;
break;
case _aussetzenKarte:
break;

31
BlazorSolution/MiniGamesTests/UnoTest.cs

@ -327,6 +327,37 @@ namespace MiniGamesTests
Assert.Equal(nachstenSpielerKartenAnzahlErwartet, UnoRegeln.Spieler[_naechsterSpielerIndex].KartenModels.Count);
}
[Theory]
[InlineData(4, 0, 3, true)]
[InlineData(4, 0, 1, false)]
[InlineData(4, 2, 3, false)]
[InlineData(4, 3, 2, true)]
[InlineData(3, 1, 2, false)]
private void RetoureKarteAufStapelLegenTest(int anzahlSpieler, int aktuellerSpielerIndex, int naechsterSpielerIndex, bool uhrzeigerSinn)
{
//arrange
UnoRegeln.ZiehKartenStapelZusammenstellen();
BeispielMultipleSpielerModelsFüllen(anzahlSpieler);
foreach (var spieler in SpielerModels)
{
UnoRegeln.SpielerErstellen(spieler.SpielerName);
}
var erwartet = !uhrzeigerSinn;
var _aktuellerSpielerIndex = aktuellerSpielerIndex;
var beispielZuLegendeKarte = BeispielKarte(Kartenbezeichnung.RetoureKarte.ToString(), Farbe.Gelb.ToString(), true);
//act
UnoRegeln.Uhrzeigersinn = uhrzeigerSinn;
UnoRegeln.KarteAufStapelLegen(UnoRegeln.Spieler[_aktuellerSpielerIndex].SpielerModel.Id, beispielZuLegendeKarte);
//assert
Assert.Equal(naechsterSpielerIndex, UnoRegeln.Spieler.FindIndex(x => x.SpielerModel.Id == UnoRegeln.NaechsterSpielerId));
}
#region Stapel erstellen
[Theory]
[InlineData((Kartenbezeichnung)2, Farbe.Gelb, false, 19)]

Loading…
Cancel
Save