public void CreateTurn_SetsPlayer()
        {
            // Arrange
            IList <IDiscardedCardState> roundDiscard = new List <IDiscardedCardState>();
            IDiscardableCardState       roundHand    = new CardState(0, 0);
            Guid playerId = Guid.Empty;
            IRoundPlayerState playerState = new PlayerState(playerId, roundDiscard, null, outOfRound: false, roundHand: roundHand);

            IList <IDiscardableCardState> turnHand               = new[] { roundHand };
            IDiscardedCardState           turnDiscard            = null;
            IDrawablePlayerState          initialTurnPlayerState = new PlayerState(playerId, null, turnHand, turnDiscard: turnDiscard);
            var expected = initialTurnPlayerState;

            _playerFactory
            .Setup(pf => pf.CreateTurnPlayer(playerState))
            .Returns(initialTurnPlayerState);
            IDrawableCardState turnDeck = new CardState(44, 55);

            // Act
            TurnStateFactory factory = this.CreateFactory();


            var turn   = factory.CreateTurn(playerState, turnDeck);
            var actual = turn.DrawablePlayerState;

            // Assert
            Assert.AreEqual(expected, actual);
        }
Esempio n. 2
0
        private void SimThread(IPlayer player, IEnemy enemy)
        {
            TurnStateFactory     factory      = new TurnStateFactory();
            TurnStateMachine     stateMachine = new TurnStateMachine(factory);
            GunSlingerSimulation simulator    = new GunSlingerSimulation(stateMachine, rng, numTurns);

            List <SimulationSummary> summaries = new List <SimulationSummary>(numSimsPerThread);

            for (int i = 0; i < numSimsPerThread; i++)
            {
                summaries.Add(simulator.Simulate(player, enemy));
            }

            sims.Add(summaries);
        }