Esempio n. 1
0
        protected override void Given()
        {
            try
            {
                var game = Container.GetInstance <Game>();

                _supply = Container.GetInstance <SupplyBuilder>().BuildSupply();
                _scope  = new MockTurnScope
                {
                    TurnNumber      = 1,
                    Player          = SUT,
                    Supply          = _supply,
                    TreasuresInHand = 5.Coppers(),
                    Coins           = 5,
                    EventAggregator = _eventAggregator
                };
                _player = game.Players.ToList()[0];

                _player.BeginBuyPhase(new BuyPhase(_scope));
            }
            catch (Exception ex)
            {
                _thrown = ex;
            }
        }
        public void When_no_card_is_available_to_purchase_phase_ends()
        {
            var eventAggregator = new MockEventAggregator();
            var discardPile     = new DiscardPile();
            var deck            = new Deck(7.Coppers(), 3.Estates());
            var player          = new Player(deck, discardPile, new NaivePlayerController());
            var supply          = new Supply(

                new SupplyPile(1, Action.Village, eventAggregator));

            var turnScope = new MockTurnScope {
                TreasuresInHand = player.Hand, Coins = 0, Player = player, Supply = supply, EventAggregator = eventAggregator
            };
            var buyPhase = new BuyPhase(turnScope);

            player.BeginBuyPhase(buyPhase);
            eventAggregator.AssertMessageWasSent <DeclineToPurchaseResponse>();
        }