예제 #1
0
        public void IsCurrentAttemptDefuser_ShouldReturnFalse_WhenCurrentDefuseAttemptReturnFalse()
        {
            // Given
            var player = new Player("Player Name");

            _currentDefuseAttempt.IsDefuser(player).Returns(false);
            _defusingState.SetNewDefuseAttempt(_currentDefuseAttempt);

            // When
            var isCurrentAttemptDefuser = _defusingState.IsCurrentAttemptDefuser(player);

            // Then
            Assert.IsFalse(isCurrentAttemptDefuser);
        }
예제 #2
0
 public void OnNewDefuseAttemptSet(DefuseAttempt defuseAttempt)
 {
     foreach (var playerController in _playerControllersOnServer)
     {
         var isPlayerDefuser = defuseAttempt.IsDefuser(playerController.Player);
         playerController.RpcOnNewDefuseAttemptSet(defuseAttempt.BombId, isPlayerDefuser);
     }
 }
예제 #3
0
        DefuseAttempt_ShouldReturnDefuseAttemptReturningIsDefuserTrueForLastPlayerAndFalseForOthers_WhenRandomReturnMaxValue_WithThreePlayers()
        {
            // Given
            var players = new List <Player> {
                _player1, _player2, _player3
            }.AsReadOnly();

            _random.Range(Arg.Any <int>(), Arg.Any <int>())
            .Returns(players.Count - 1);

            // When
            var defuseAttempt = new DefuseAttempt(_random, _defuserCounter, _allBombs, players, 0);

            // Then
            Assert.IsFalse(defuseAttempt.IsDefuser(_player1));
            Assert.IsFalse(defuseAttempt.IsDefuser(_player2));
            Assert.IsTrue(defuseAttempt.IsDefuser(_player3));
        }
예제 #4
0
        DefuseAttempt_ShouldReturnDefuseAttemptReturningIsDefuserTrueForTwoFirstPlayersAndFalseForOthers_WhenRandomReturnAlwaysZero_WithFivePlayers()
        {
            // Given
            var players = new List <Player> {
                _player1, _player2, _player3, _player4, _player5
            }.AsReadOnly();

            _random.Range(Arg.Any <int>(), Arg.Any <int>())
            .Returns(0);

            // When
            var defuseAttempt = new DefuseAttempt(_random, _defuserCounter, _allBombs, players, 0);

            // Then
            Assert.IsTrue(defuseAttempt.IsDefuser(_player1));
            Assert.IsTrue(defuseAttempt.IsDefuser(_player2));
            Assert.IsFalse(defuseAttempt.IsDefuser(_player3));
            Assert.IsFalse(defuseAttempt.IsDefuser(_player4));
            Assert.IsFalse(defuseAttempt.IsDefuser(_player5));
        }
예제 #5
0
        DefuseAttempt_ShouldReturnDefuseAttemptReturningIsDefuserTrueForTwoLastPlayersAndFalseForOthers_WhenRandomReturnMaxValue_WithSixPlayers()
        {
            // Given
            var players = new List <Player> {
                _player1, _player2, _player3, _player4, _player5, _player6
            }.AsReadOnly();

            _random.Range(0, 6).Returns(5);
            _random.Range(0, 5).Returns(4);

            // When
            var defuseAttempt = new DefuseAttempt(_random, _defuserCounter, _allBombs, players, 0);

            // Then
            Assert.IsFalse(defuseAttempt.IsDefuser(_player1));
            Assert.IsFalse(defuseAttempt.IsDefuser(_player2));
            Assert.IsFalse(defuseAttempt.IsDefuser(_player3));
            Assert.IsFalse(defuseAttempt.IsDefuser(_player4));
            Assert.IsTrue(defuseAttempt.IsDefuser(_player5));
            Assert.IsTrue(defuseAttempt.IsDefuser(_player6));
        }