You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
129 lines
2.8 KiB
129 lines
2.8 KiB
using QwirkleClassLibrary.Games;
|
|
using QwirkleClassLibrary.Players;
|
|
namespace TestBase;
|
|
|
|
public class TestGame
|
|
{
|
|
|
|
|
|
[Theory]
|
|
[InlineData(true, false, "testt")]
|
|
[InlineData(false, false, "testt")]
|
|
public void Test_GameAddPlayerIngame(bool result, bool gamestate, string p)
|
|
{
|
|
Game game = new Game();
|
|
|
|
if (!result) {
|
|
game.AddPlayerInGame(p);
|
|
Assert.False(game.AddPlayerInGame(p));
|
|
}
|
|
else
|
|
{
|
|
Assert.True(game.AddPlayerInGame(p));
|
|
}
|
|
|
|
if (gamestate)
|
|
{
|
|
Assert.False(game.AddPlayerInGame(p));
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
[Theory]
|
|
[InlineData(false, null)]
|
|
[InlineData(true, "test")]
|
|
public void Test_GameAddPlayerIngame2(bool result, string p)
|
|
{
|
|
Game game = new Game();
|
|
|
|
if (!result)
|
|
{
|
|
Assert.False(game.AddPlayerInGame(p));
|
|
}
|
|
|
|
for (int i = 0; i < 4; i++)
|
|
{
|
|
string name = p + i;
|
|
game.AddPlayerInGame(name);
|
|
}
|
|
Assert.False(game.AddPlayerInGame(p));
|
|
|
|
}
|
|
|
|
[Theory]
|
|
[InlineData("test")]
|
|
public void Test_GameCreatePlayers(string p)
|
|
{
|
|
Game game = new Game();
|
|
Player player = new Player(p);
|
|
Assert.Equal(game.CreatePlayer(p).NameTag, player.NameTag);
|
|
}
|
|
|
|
[Theory]
|
|
[InlineData(true, "test1", "test2")]
|
|
[InlineData(false, "test1", "test2")]
|
|
public void Test_GameState(bool result, string p1, string p2)
|
|
{
|
|
Game game = new Game();
|
|
|
|
if (!result)
|
|
{
|
|
game.StartGame();
|
|
Assert.False(game.GameRunning);
|
|
}
|
|
game.AddPlayerInGame(p1);
|
|
game.AddPlayerInGame(p2);
|
|
game.StartGame();
|
|
|
|
Assert.True(game.GameRunning);
|
|
}
|
|
|
|
|
|
[Theory]
|
|
[InlineData(true, "test1", "test2", "test3")]
|
|
[InlineData(false, "test1", "test2", "test3")]
|
|
public void Test_GameGetPlayingPlayerPosition(bool result, string p1, string p2, string p3)
|
|
{
|
|
Game game = new Game();
|
|
game.AddPlayerInGame(p1);
|
|
game.AddPlayerInGame(p2);
|
|
game.AddPlayerInGame(p3);
|
|
|
|
if (!result)
|
|
{
|
|
Assert.Equal(-1, game.GetPlayingPlayerPosition());
|
|
return;
|
|
}
|
|
game.StartGame();
|
|
game.SetFirstPlayer();
|
|
Assert.Equal(0, game.GetPlayingPlayerPosition());
|
|
}
|
|
|
|
[Theory]
|
|
[InlineData(true)]
|
|
[InlineData(false)]
|
|
public void Test_GameGetPlaylingPlayer(bool result)
|
|
{
|
|
Game game = new Game();
|
|
game.AddPlayerInGame("patrick");
|
|
game.AddPlayerInGame("jean");
|
|
if (!result)
|
|
{
|
|
Assert.Throws<ArgumentException>(() => game.GetPlayingPlayer());
|
|
}
|
|
game.StartGame();
|
|
game.SetFirstPlayer();
|
|
|
|
Assert.Equal(game.PlayerList[0], game.GetPlayingPlayer());
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|