test: add unit tests for Blackjack and TicTacToe

- Add xUnit test projects for both games
- Implement game flow tests for Blackjack
- Implement game flow tests for TicTacToe
- Rename namespaces and projects to follow `Game.*` convention
- Add documentation for testing games
This commit is contained in:
2026-07-20 16:41:10 +08:00
parent 7946f4bafd
commit b4661e714e
38 changed files with 578 additions and 34 deletions
+13
View File
@@ -0,0 +1,13 @@
using MessagePack;
namespace Game.TicTacToe;
/// <summary>
/// Identifies a board position. One entity per cell.
/// </summary>
[MessagePackObject]
public struct Cell
{
[Key(0)] public int Row;
[Key(1)] public int Col;
}
+13
View File
@@ -0,0 +1,13 @@
using MessagePack;
namespace Game.TicTacToe;
/// <summary>
/// A mark placed on a cell by a player.
/// Only present on cells that have been claimed.
/// </summary>
[MessagePackObject]
public struct Mark
{
[Key(0)] public Player Player;
}
+8
View File
@@ -0,0 +1,8 @@
namespace Game.TicTacToe;
public enum Player : byte
{
None = 0,
X = 1,
O = 2
}