public void IsSameAs_SecondGameDataIsNull_ReturnsFalse() { var gameData1 = new GameInitializationData(); var message1 = new InitializeGameMessage(gameData1); var message2 = new InitializeGameMessage(null); message1.IsSameAs(message2).ShouldBeFalse(); }
public void IsSameAs_MessagesAreSame_ReturnsTrue() { var gameData1 = new GameInitializationData { BoardData = new Byte[] { 1, 2, 3 } }; var message1 = new InitializeGameMessage(gameData1); var gameData2 = new GameInitializationData { BoardData = new Byte[] { 1, 2, 3 } }; var message2 = new InitializeGameMessage(gameData2); message1.IsSameAs(message2).ShouldBeTrue(); }
public void IsSameAs_DataIsDifferent_ReturnsFalse() { var gameData1 = new GameInitializationData { BoardData = new Byte[] { 1, 2, 3 } }; var message1 = new InitializeGameMessage(gameData1); var gameData2 = new GameInitializationData { BoardData = new Byte[] { 3, 2, 1 } }; var message2 = new InitializeGameMessage(gameData2); message1.IsSameAs(message2).ShouldBeFalse(); }
public void AllClientsReceiveBoardDataWhenGameSessionIsLaunched() { Jabberwocky.SoC.Service.GameSessionManager gameSessionManager = null; try { // Arrange var testPlayer1Data = new Jabberwocky.SoC.Service.PlayerData(TestPlayer1UserName); var testPlayer2Data = new Jabberwocky.SoC.Service.PlayerData(TestPlayer2UserName); var testPlayer3Data = new Jabberwocky.SoC.Service.PlayerData(TestPlayer3UserName); var testPlayer4Data = new Jabberwocky.SoC.Service.PlayerData(TestPlayer4UserName); var mockPlayerCardRepository = this.CreateMockPlayerCardRepository( testPlayer1Data, testPlayer2Data, testPlayer3Data, testPlayer4Data); gameSessionManager = GameSessionManagerTestExtensions.CreateGameSessionManagerForTest(4) .AddPlayerCardRepository(mockPlayerCardRepository) .WaitUntilGameSessionManagerHasStarted(); var testPlayer1 = new TestClient(TestPlayer1UserName, gameSessionManager); var testPlayer2 = new TestClient(TestPlayer2UserName, gameSessionManager); var testPlayer3 = new TestClient(TestPlayer3UserName, gameSessionManager); var testPlayer4 = new TestClient(TestPlayer4UserName, gameSessionManager); var gameInitializationData = GameInitializationDataBuilder.Build(new GameBoardManager(BoardSizes.Standard)); var expectedMessage = new InitializeGameMessage(gameInitializationData); // Act var testScript = new TestScript(testPlayer1, testPlayer2, testPlayer3, testPlayer4); testScript.RunUntil(TestScript.RunPoints.RunUntilClientsReceiveGameInitializationMessage); // Assert testPlayer1.GetLastMessage().IsSameAs(expectedMessage); testPlayer2.GetLastMessage().IsSameAs(expectedMessage); testPlayer3.GetLastMessage().IsSameAs(expectedMessage); testPlayer4.GetLastMessage().IsSameAs(expectedMessage); } finally { gameSessionManager?.WaitUntilGameSessionManagerHasStopped(); } }