Browse Source

TicTacToeBrett.Set auf ein belegtes Feld lässt das Feld unverändert und gibt false zurück

feature/tictactoe
Felix Detig 3 years ago
parent
commit
2aaac393b7
  1. 8
      BlazorSolution/MiniGames/Shared/Models/TicTacToeBrett.cs
  2. 18
      BlazorSolution/MiniGamesTests/TicTacToeBrettTest.cs

8
BlazorSolution/MiniGames/Shared/Models/TicTacToeBrett.cs

@ -43,7 +43,13 @@ namespace MiniGames.Shared.Models
public bool Set(int pos, int wert) public bool Set(int pos, int wert)
{ {
Felder[pos / 3, pos % 3] = wert;
int x = pos / 3;
int y = pos % 3;
if (Felder[x, y] != -1)
return false;
Felder[x, y] = wert;
return true; return true;
} }

18
BlazorSolution/MiniGamesTests/TicTacToeBrettTest.cs

@ -44,6 +44,24 @@ namespace MiniGamesTests
Assert.True(brett.Gleich(erwartetesBrett)); Assert.True(brett.Gleich(erwartetesBrett));
} }
[Fact]
public void Set_BelegtesFeldBelegenTest()
{
// arrange
TicTacToeBrett brett = TestBrett(1);
TicTacToeBrett erwartetesBrett = TestBrett(1);
int pos = 0;
int wert = 1;
bool erwartetGesetzt = false;
// act
bool erhaltenGesetzt = brett.Set(pos, wert);
// assert
Assert.Equal(erwartetGesetzt, erhaltenGesetzt);
Assert.True(brett.Gleich(erwartetesBrett));
}
[Fact] [Fact]
public void Gleich_LeereBretterGleichTest() public void Gleich_LeereBretterGleichTest()
{ {

Loading…
Cancel
Save