public void TestBuildCity() { var target = new Player(); target.incrementCities(); target.generateGrain(); target.generateOre(); target.generateOre(); target.buildCity(); Assert.AreEqual(1, target.getHand().getOre()); Assert.AreEqual(0, target.getHand().getGrain()); }
public void TestmakeTradeThrowsWhenPlayerCannotMakeTrade() { var player1 = new Player(); var player2 = new Player(); player1.incrementCities(); player1.generateOre(); player2.incrementCities(); player2.generateBrick(); int[] player1Hand = new int[] {2, 0, 0, 0, 0}; int[] threeBricks = new int[] {0, 0, 0, 0, 3}; player1.proposeTrade(player2, player1Hand, threeBricks); // should throw because player2 only has 2 bricks player2.makeTrade(); }
public void TestMakeTrade() { var player1 = new Player(); var player2 = new Player(); player1.incrementCities(); player1.generateOre(); player2.incrementCities(); player2.generateBrick(); int[] player1Hand = new int[] {2, 0, 0, 0, 0}; int[] player2Hand = new int[] {0, 0, 0, 0, 2}; player1.proposeTrade(player2, player1Hand, player2Hand); player2.makeTrade(); }
public void TestGetSettlementLocations() { var target = new Player(); target.incrementCities(); target.generateGrain(); target.generateWool(); target.generateLumber(); target.generateBrick(); target.addSettlement(new Point(4, 4)); List<Point> settlements = target.getSettlementLocations(); Assert.AreEqual(new Point(4, 4), settlements[0]); }
public void TestGetRoadsPlayed() { var target = new Player(); target.incrementCities(); target.generateBrick(); target.generateLumber(); target.buildRoad(); target.buildRoad(); Assert.AreEqual(2, target.getRoadsPlayed()); }
public void TestTradeWithBankForOreThrowsWhenBankHasNone() { World world = new World(); var player1 = new Player("Bob", Color.Red, world); var player2 = new Player("Jim", Color.Blue, world); player1.incrementCities(); player1.incrementCities(); player2.incrementCities(); player2.incrementCities(); player2.incrementCities(); player2.incrementCities(); player2.incrementSettlements(); player2.generateOre(); player2.incrementSettlements(); player2.generateOre(); Assert.AreEqual(0, world.bank.getOreRemaining()); player1.generateLumber(); player1.tradeWithBank("lumber", "ore"); }
public void TestTradeForDevCardThrowsWhenBankHasNoDevCards() { var target = new Player(); target.incrementCities(); target.incrementCities(); target.incrementSettlements(); for (int i = 0; i < 5; i++) { target.generateGrain(); target.generateOre(); target.generateWool(); for (int j = 0; j < 5; j++) { target.tradeForDevCard(); } } target.generateGrain(); target.generateOre(); target.generateWool(); // should generate an exception target.tradeForDevCard(); }
public void TestTradeBrickWithBankWithAnythingPort() { var target = new Player(); target.incrementCities(); target.incrementSettlements(); target.generateBrick(); target.addPort(new Port("Anything", 3)); target.tradeWithBank("brick", "lumber"); Assert.AreEqual(1, target.playerHand.getLumber()); Assert.AreEqual(0, target.playerHand.getBrick()); }
public void TestTradeWoolWithBankWithAnythingPort() { var target = new Player(); target.incrementCities(); target.incrementSettlements(); target.generateWool(); target.addPort(new Port("Anything", 3)); target.tradeWithBank("wool", "grain"); Assert.AreEqual(1, target.playerHand.getGrain()); Assert.AreEqual(0, target.playerHand.getWool()); }
public void TestTradeWithBankWithWoolPort() { var target = new Player(); target.incrementCities(); target.generateGrain(); target.generateWool(); target.addPort(new Port("Wool", 2)); target.tradeWithBank("wool", "grain"); Assert.AreEqual(3, target.playerHand.getGrain()); Assert.AreEqual(0, target.playerHand.getWool()); }
public void TestTradeWithBankWithOrePort() { var target = new Player(); target.incrementCities(); target.generateWool(); target.generateOre(); target.addPort(new Port("Ore", 2)); target.tradeWithBank("ore", "wool"); Assert.AreEqual(3, target.playerHand.getWool()); Assert.AreEqual(0, target.playerHand.getOre()); }
public void TestTradeWithBankWithLumberPort() { var target = new Player(); target.incrementCities(); target.generateOre(); target.generateLumber(); target.addPort(new Port("Lumber", 2)); target.tradeWithBank("lumber", "ore"); Assert.AreEqual(3, target.playerHand.getOre()); Assert.AreEqual(0, target.playerHand.getLumber()); }
public void TestTradeWithBankWithGrainPort() { var target = new Player(); target.incrementCities(); target.generateBrick(); target.generateGrain(); target.addPort(new Port("Grain", 2)); target.tradeWithBank("grain", "brick"); Assert.AreEqual(3, target.playerHand.getBrick()); Assert.AreEqual(0, target.playerHand.getGrain()); }
public void TestTradeWithBankWithBrickPort() { var target = new Player(); target.incrementCities(); target.generateLumber(); target.generateBrick(); target.addPort(new Port("Brick", 2)); target.tradeWithBank("brick", "lumber"); Assert.AreEqual(3, target.playerHand.getLumber()); Assert.AreEqual(0, target.playerHand.getBrick()); }
public void TestTradeWithBankForWoolThrowsWhenBankHasNone() { World world = new World(); var player1 = new Player("Bob", Color.Red, world); var player2 = new Player("Jim", Color.Blue, world); player1.incrementCities(); player1.incrementCities(); player2.incrementCities(); player2.incrementCities(); player2.incrementCities(); player2.incrementCities(); player2.incrementSettlements(); player2.generateWool(); player2.incrementSettlements(); player2.generateWool(); Assert.AreEqual(0, world.bank.getWoolRemaining()); player1.generateBrick(); player1.tradeWithBank("brick", "wool"); }
public void TestMustRemoveHalfWhenMoreThanSeven() { var target = new Player(); target.incrementCities(); target.generateGrain(); target.generateWool(); target.generateLumber(); target.generateBrick(); Assert.IsTrue(target.mustRemoveHalf()); }
public void TestTradeAtPort() { var target = new Player(); target.incrementCities(); target.incrementSettlements(); target.generateBrick(); target.generateGrain(); target.generateLumber(); target.generateOre(); target.generateWool(); target.tradeAtPort(3, "grain", "brick"); target.tradeAtPort(3, "lumber", "grain"); target.tradeAtPort(3, "ore", "lumber"); target.tradeAtPort(3, "wool", "ore"); target.tradeAtPort(3, "brick", "wool"); Assert.AreEqual(1, target.getHand().getGrain()); Assert.AreEqual(1, target.getHand().getLumber()); Assert.AreEqual(1, target.getHand().getOre()); Assert.AreEqual(1, target.getHand().getWool()); Assert.AreEqual(1, target.getHand().getBrick()); }
public void TestGenerateResourcesWithOnlyCities() { var target = new Player(); target.incrementCities(); target.incrementCities(); Assert.AreEqual(2, target.getCitiesRemaining()); target.generateBrick(); target.generateGrain(); target.generateLumber(); target.generateOre(); target.generateWool(); Assert.AreEqual(4, target.getHand().getBrick()); Assert.AreEqual(4, target.getHand().getGrain()); Assert.AreEqual(4, target.getHand().getLumber()); Assert.AreEqual(4, target.getHand().getOre()); Assert.AreEqual(4, target.getHand().getWool()); }
public void TestCanBuildCity() { var target = new Player(); Assert.IsFalse(target.canBuildCity()); target.incrementCities(); target.generateGrain(); target.generateOre(); target.generateOre(); Assert.IsTrue(target.canBuildCity()); }
public void TestGenerateWoolWithCitiesThrowsWhenBankHasInsufficientResources() { var target = new Player(); target.incrementCities(); target.incrementCities(); target.incrementCities(); target.incrementCities(); Assert.AreEqual(0, target.getCitiesRemaining()); target.generateWool(); target.generateWool(); Assert.AreEqual(16, target.getHand().getWool()); target.generateWool(); }
public void TestTradeForGrainAtPortThrowsWhenBankHasNone() { World world = new World(); var player1 = new Player("Bob", Color.Red, world); var player2 = new Player("Jim", Color.Blue, world); player1.incrementSettlements(); player2.incrementCities(); player2.incrementCities(); player2.incrementCities(); player2.incrementCities(); player2.incrementSettlements(); player1.generateGrain(); player2.generateGrain(); player2.generateGrain(); Assert.AreEqual(0, world.bank.getGrainRemaining()); player1.generateOre(); player1.generateOre(); player1.generateOre(); player1.tradeAtPort(3, "grain", "ore"); }
public void TestTradeForWoolAtPortThrowsWhenBankHasNone() { World world = new World(); var player1 = new Player("Bob", Color.Red, world); var player2 = new Player("Jim", Color.Blue, world); player1.incrementSettlements(); player2.incrementCities(); player2.incrementCities(); player2.incrementCities(); player2.incrementCities(); player2.incrementSettlements(); player1.generateWool(); player2.generateWool(); player2.generateWool(); Assert.AreEqual(0, world.bank.getWoolRemaining()); player1.generateLumber(); player1.generateLumber(); player1.generateLumber(); player1.tradeAtPort(3, "wool", "lumber"); }