Browse Source

Punkte des Gewinners werden um 1 erhöht

feature/tictactoe
Felix Detig 3 years ago
parent
commit
a184e9a531
  1. 13
      BlazorSolution/MiniGames/Client/ViewModel/TicTacToe.cs
  2. 14
      BlazorSolution/MiniGamesTests/TicTacToeTest.cs

13
BlazorSolution/MiniGames/Client/ViewModel/TicTacToe.cs

@ -11,6 +11,12 @@ namespace MiniGames.Client.ViewModel
this.Model = model; this.Model = model;
} }
public SpielerModel[] Spieler
{
get { return Model.Spieler; }
set { Model.Spieler = value; }
}
public TicTacToeBrett Brett public TicTacToeBrett Brett
{ {
get { return Model.Brett; } get { return Model.Brett; }
@ -36,12 +42,19 @@ namespace MiniGames.Client.ViewModel
public void SpielerInput(int posIndex) public void SpielerInput(int posIndex)
{ {
if (GewinnerIndex >= 0) return;
if (Brett.Set(posIndex, AktiverSpielerIndex)) if (Brett.Set(posIndex, AktiverSpielerIndex))
{ {
SpielerWechsel(); SpielerWechsel();
} }
GewinnerIndex = Brett.Gewinner(); GewinnerIndex = Brett.Gewinner();
if (GewinnerIndex >= 0)
{
Spieler[GewinnerIndex].Punkte++;
}
} }
public void SpielerWechsel() public void SpielerWechsel()

14
BlazorSolution/MiniGamesTests/TicTacToeTest.cs

@ -105,10 +105,16 @@ namespace MiniGamesTests
[Theory] [Theory]
[InlineData(0, 0, 3, 1, 4, 2)] [InlineData(0, 0, 3, 1, 4, 2)]
[InlineData(0, 3, 0, 4, 1, 5, 2)] [InlineData(0, 3, 0, 4, 1, 5, 2)]
[InlineData(1, 0, 6, 3, 4, 6, 1, 2)]
public void SpielerInput_GewinnerTest(int gewinnerIndex, params int[] inputs) public void SpielerInput_GewinnerTest(int gewinnerIndex, params int[] inputs)
{ {
// arrange // arrange
TicTacToe spiel = StandardSpiel(); TicTacToe spiel = StandardSpiel();
spiel.AktiverSpielerIndex = 0;
spiel.Spieler[0].Punkte = 0;
spiel.Spieler[1].Punkte = 1;
int erwartetePunkteSpieler1 = (gewinnerIndex == 0) ? 1 : 0;
int erwartetePunkteSpieler2 = (gewinnerIndex == 1) ? 2 : 1;
int erwarteterGewinnerIndex = gewinnerIndex; int erwarteterGewinnerIndex = gewinnerIndex;
// act // act
@ -119,6 +125,8 @@ namespace MiniGamesTests
// assert // assert
Assert.Equal(spiel.GewinnerIndex, erwarteterGewinnerIndex); Assert.Equal(spiel.GewinnerIndex, erwarteterGewinnerIndex);
Assert.Equal(spiel.Spieler[0].Punkte, erwartetePunkteSpieler1);
Assert.Equal(spiel.Spieler[1].Punkte, erwartetePunkteSpieler2);
} }
[Fact] [Fact]
@ -127,6 +135,10 @@ namespace MiniGamesTests
// arrange // arrange
TicTacToe spiel = StandardSpiel(); TicTacToe spiel = StandardSpiel();
spiel.AktiverSpielerIndex = 0; spiel.AktiverSpielerIndex = 0;
spiel.Spieler[0].Punkte = 0;
spiel.Spieler[1].Punkte = 0;
int erwartetePunkteSpieler1 = 0;
int erwartetePunkteSpieler2 = 0;
int erwarteterGewinnerIndex = -1; int erwarteterGewinnerIndex = -1;
// act // act
@ -139,6 +151,8 @@ namespace MiniGamesTests
// assert // assert
Assert.Equal(spiel.GewinnerIndex, erwarteterGewinnerIndex); Assert.Equal(spiel.GewinnerIndex, erwarteterGewinnerIndex);
Assert.Equal(spiel.Spieler[0].Punkte, erwartetePunkteSpieler1);
Assert.Equal(spiel.Spieler[1].Punkte, erwartetePunkteSpieler2);
} }
} }
} }
Loading…
Cancel
Save