using DominionBase; using DominionBase.Cards; using DominionBase.Cards.Prosperity2ndEdition; using DominionBase.Enums; using Microsoft.VisualStudio.TestTools.UnitTesting; using Moq; namespace DominionBaseUnitTest.Cards { [TestClass] public class UnitTestProsperity2ndEdition : UnitTestCards { [TestMethod] public void Test_Bishop_Basic() { var card = new Bishop(); Assert.AreEqual(new Cost(4), card.BaseCost); Assert.AreEqual(new Currency(1), card.Benefit.Currency); Assert.AreEqual(1, card.Benefit.VictoryPoints); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); } [TestMethod] public void Test_City_Basic() { var card = new City(); Assert.AreEqual(new Cost(5), card.BaseCost); Assert.AreEqual(1, card.Benefit.Cards); Assert.AreEqual(2, card.Benefit.Actions); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); } [TestMethod] public void Test_CountingHouse_Basic() { var card = new CountingHouse(); Assert.AreEqual(new Cost(5), card.BaseCost); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); } [TestMethod] public void Test_Expand_Basic() { var card = new Expand(); Assert.AreEqual(new Cost(7), card.BaseCost); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); } [TestMethod] public void Test_Forge_Basic() { var card = new Forge(); Assert.AreEqual(new Cost(7), card.BaseCost); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); } [TestMethod] public void Test_Goons_Basic() { var card = new Goons(); Assert.AreEqual(new Cost(6), card.BaseCost); Assert.AreEqual(new Currency(2), card.Benefit.Currency); Assert.AreEqual(1, card.Benefit.Buys); Assert.AreEqual(Categories.Card | Categories.Action | Categories.Attack, card.Category); } [TestMethod] public void Test_GrandMarket_Basic() { var card = new GrandMarket(); Assert.AreEqual(new Cost(6), card.BaseCost); Assert.AreEqual(1, card.Benefit.Cards); Assert.AreEqual(1, card.Benefit.Actions); Assert.AreEqual(new Currency(2), card.Benefit.Currency); Assert.AreEqual(1, card.Benefit.Buys); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); } [TestMethod] public void Test_KingsCourt_Basic() { var card = new KingsCourt(); Assert.AreEqual(new Cost(7), card.BaseCost); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); } [TestMethod] public void Test_Loan_Basic() { var card = new Loan(); Assert.AreEqual(new Cost(3), card.BaseCost); Assert.AreEqual(new Currency(1), card.Benefit.Currency); Assert.AreEqual(Categories.Card | Categories.Treasure, card.Category); } [TestMethod] public void Test_Mountebank_Basic() { var card = new Mountebank(); Assert.AreEqual(new Cost(5), card.BaseCost); Assert.AreEqual(new Currency(2), card.Benefit.Currency); Assert.AreEqual(Categories.Card | Categories.Action | Categories.Attack, card.Category); } [TestMethod] public void Test_Rabble_Basic() { var card = new Rabble(); Assert.AreEqual(new Cost(5), card.BaseCost); Assert.AreEqual(3, card.Benefit.Cards); Assert.AreEqual(Categories.Card | Categories.Action | Categories.Attack, card.Category); } [TestMethod] public void Test_RoyalSeal_Basic() { var card = new RoyalSeal(); Assert.AreEqual(new Cost(5), card.BaseCost); Assert.AreEqual(new Currency(2), card.Benefit.Currency); Assert.AreEqual(Categories.Card | Categories.Treasure, card.Category); } [TestMethod] public void Test_Talisman_Basic() { var card = new Talisman(); Assert.AreEqual(new Cost(4), card.BaseCost); Assert.AreEqual(new Currency(1), card.Benefit.Currency); Assert.AreEqual(Categories.Card | Categories.Treasure, card.Category); } [TestMethod] public void Test_TradeRoute_Basic() { var card = new TradeRoute(); Assert.AreEqual(new Cost(3), card.BaseCost); Assert.AreEqual(1, card.Benefit.Buys); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); } [TestMethod] public void Test_Vault_Basic() { var card = new Vault(); Assert.AreEqual(new Cost(5), card.BaseCost); Assert.AreEqual(2, card.Benefit.Cards); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); } [TestMethod] public void Test_Watchtower_Basic() { var card = new Watchtower(); Assert.AreEqual(new Cost(3), card.BaseCost); Assert.AreEqual(Categories.Card | Categories.Action | Categories.Reaction, card.Category); } } }