Persistence Test #3
continuous-integration/drone/push Build is passing Details

test_old_branch
Jules LASCRET 1 year ago
parent 8e4bc58ddb
commit 5973e516f7

@ -9,66 +9,71 @@ namespace TestBase
public class TestPersistence public class TestPersistence
{ {
[Fact] [Fact]
public void Test_SaveGame() public void Test_SaveGame()
{ {
var game = new Game(); var game = new Game();
var gamePersistence = new GamePersistenceJson(); var gamePersistence = new GamePersistenceJson();
gamePersistence.SaveGame(game); gamePersistence.SaveGame(game);
Assert.True(File.Exists("Game.json")); Assert.True(File.Exists("Game.json"));
} }
[Fact] [Fact]
public void Test_LoadGame() public void Test_LoadGame()
{ {
Directory.SetCurrentDirectory("./../../../../Files"); Directory.SetCurrentDirectory("./../../../../Files");
var game = new Game(); var game = new Game();
game.AddPlayerInGame(["Jules", "Jérémy"]); game.AddPlayerInGame(["Jules", "Jérémy"]);
game.StartGame(); game.StartGame();
var gamePersistence = new GamePersistenceJson(); var gamePersistence = new GamePersistenceJson();
gamePersistence.SaveGame(game); gamePersistence.SaveGame(game);
var loadedGame = gamePersistence.LoadGame(); var loadedGame = gamePersistence.LoadGame();
Assert.True(game.Board.ReadCells.All(cell => Assert.True(game.Board.ReadCells.All(cell =>
cell.GetX == loadedGame.Board.GetCell(cell.GetX, cell.GetY)!.GetX && cell.GetX == loadedGame.Board.GetCell(cell.GetX, cell.GetY)!.GetX &&
cell.GetY == loadedGame.Board.GetCell(cell.GetX, cell.GetY)!.GetY && cell.GetY == loadedGame.Board.GetCell(cell.GetX, cell.GetY)!.GetY &&
cell.IsFree == loadedGame.Board.GetCell(cell.GetX, cell.GetY)!.IsFree)); cell.IsFree == loadedGame.Board.GetCell(cell.GetX, cell.GetY)!.IsFree));
} }
[Fact] [Fact]
public void Test_SaveLeaderboard() public void Test_SaveLeaderboard()
{ {
var leaderboard = new Leaderboard(); var leaderboard = new Leaderboard();
ILeaderboardPersistence leaderboardPersistence = new LeaderboardPersistenceJson(); var leaderboardPersistence = new LeaderboardPersistenceJson();
leaderboardPersistence.SaveLeaderboard(leaderboard); leaderboardPersistence.SaveLeaderboard(leaderboard);
Assert.True(File.Exists("Leaderboard.json")); Assert.True(File.Exists("Leaderboard.json"));
} }
[Fact] [Fact]
public void Test_LoadLeaderboard() public void Test_LoadLeaderboard()
{ {
var scoreboard = new Dictionary<Player, int>() var scoreboard = new Dictionary<Player, int>()
{ {
{new Player("Rémy"), 60}, { new Player("Rémy"), 60 },
{new Player("Jérémy"), 50}, { new Player("Jérémy"), 50 },
{new Player("Jules"), 100} { new Player("Jules"), 100 }
}; };
var scoreboardro = scoreboard.AsReadOnly(); var scoreboardro = scoreboard.AsReadOnly();
var leaderboard = new Leaderboard(); var leaderboard = new Leaderboard();
leaderboard.AddScoreInLead(scoreboardro); leaderboard.AddScoreInLead(scoreboardro);
Assert.Equal("Jules", leaderboard.Lb[0].PlayerName); var leaderboardPersistence = new LeaderboardPersistenceJson();
Assert.Equal(100, leaderboard.Lb[0].Points); leaderboardPersistence.SaveLeaderboard(leaderboard);
Assert.Equal(1, leaderboard.Lb[0].Victories);
} var loadedLeaderboard = leaderboardPersistence.LoadLeaderboard();
Assert.Equal("Jules", loadedLeaderboard.Lb[0].PlayerName);
Assert.Equal(100, loadedLeaderboard.Lb[0].Points);
Assert.Equal(1, loadedLeaderboard.Lb[0].Victories);
}
} }
} }
Loading…
Cancel
Save