Browse Source

refactoring von ZiehEineKarte

feature/uno
Dato88 3 years ago
parent
commit
3135c7b93d
  1. 2
      BlazorSolution/MiniGames/Client/ViewModel/IUno.cs
  2. 16
      BlazorSolution/MiniGames/Client/ViewModel/Uno.cs
  3. 9
      BlazorSolution/MiniGamesTests/UnoTest.cs

2
BlazorSolution/MiniGames/Client/ViewModel/IUno.cs

@ -9,6 +9,6 @@ namespace MiniGames.Client.ViewModel
void ZiehKartenStapelZusammenstellen(); void ZiehKartenStapelZusammenstellen();
bool IstAblageStapelFarbeGleichZuLegendeKarte(string neueKarteFarbe); bool IstAblageStapelFarbeGleichZuLegendeKarte(string neueKarteFarbe);
List<KartenModel> ZiehEineKarte(List<KartenModel> zuZiehendeHand);
void ZiehEineKarte(int id);
} }
} }

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

@ -24,19 +24,18 @@ namespace MiniGames.Client.ViewModel
} }
} }
public List<KartenModel> ZiehEineKarte(List<KartenModel> zuZiehendeHand)
public void ZiehEineKarte(int id)
{ {
List<KartenModel> _zuZiehendeHand = zuZiehendeHand;
int _id = id;
int index = Spieler.FindIndex(x => x.Id == _id);
_zuZiehendeHand.Add(ZiehKartenStapel.KartenModels.FirstOrDefault());
Spieler[index].KartenModels.Add(ZiehKartenStapel.KartenModels.FirstOrDefault());
ZiehKartenStapel.KartenModels.RemoveAt(0); ZiehKartenStapel.KartenModels.RemoveAt(0);
return _zuZiehendeHand;
} }
public List<KartenModel> KarteAufStapelLegen(List<KartenModel> naechstenHand, KartenModel zuLegendeKarte)
public void KarteAufStapelLegen(int id, KartenModel zuLegendeKarte)
{ {
List<KartenModel> _naechstenHand = naechstenHand;
int _id = id;
StapelModel _stapelModel = new(); StapelModel _stapelModel = new();
_stapelModel.KartenModels = new(); _stapelModel.KartenModels = new();
const string _plusZweiKarte = "PlusZweiKarte"; const string _plusZweiKarte = "PlusZweiKarte";
@ -53,7 +52,7 @@ namespace MiniGames.Client.ViewModel
case _plusZweiKarte: case _plusZweiKarte:
for (int i = 0; i < 2; i++) for (int i = 0; i < 2; i++)
{ {
_naechstenHand = ZiehEineKarte(_naechstenHand);
ZiehEineKarte(_id);
} }
break; break;
case _retoureKarte: case _retoureKarte:
@ -65,7 +64,6 @@ namespace MiniGames.Client.ViewModel
} }
return _naechstenHand;
} }
public void SpielerErstellen(string spielerName) public void SpielerErstellen(string spielerName)

9
BlazorSolution/MiniGamesTests/UnoTest.cs

@ -146,15 +146,16 @@ namespace MiniGamesTests
{ {
//arrange //arrange
UnoRegeln.ZiehKartenStapelZusammenstellen(); UnoRegeln.ZiehKartenStapelZusammenstellen();
List<KartenModel> KartenListe = new();
UnoRegeln.SpielerErstellen("Andrej");
UnoRegeln.Spieler.FirstOrDefault().KartenModels = new();
var beispielHand = BeispielHand(); var beispielHand = BeispielHand();
var erwartet = UnoRegeln.ZiehKartenStapel.KartenModels.FirstOrDefault(); var erwartet = UnoRegeln.ZiehKartenStapel.KartenModels.FirstOrDefault();
//act //act
KartenListe = UnoRegeln.ZiehEineKarte(beispielHand.KartenModels);
UnoRegeln.ZiehEineKarte(1);
var erhalten = KartenListe.LastOrDefault();
var erhalten = UnoRegeln.Spieler[0].KartenModels.LastOrDefault();
//assert //assert
Assert.Equal(erwartet, erhalten); Assert.Equal(erwartet, erhalten);
@ -177,7 +178,7 @@ namespace MiniGamesTests
//act //act
naechstenHand.KartenModels = UnoRegeln.KarteAufStapelLegen(naechstenHand.KartenModels, beispielZuLegendeKarte);
//naechstenHand.KartenModels = UnoRegeln.KarteAufStapelLegen(naechstenHand.KartenModels, beispielZuLegendeKarte);
//assert //assert
} }

Loading…
Cancel
Save