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>(); }