using DominionBase; using DominionBase.Cards; using DominionBase.Cards.Intrigue; using DominionBase.Enums; using Microsoft.VisualStudio.TestTools.UnitTesting; using Moq; namespace DominionBaseUnitTest.Cards { [TestClass] public class UnitTestIntrigue : UnitTestCards { [TestMethod] public void Test_Baron_Basic() { var card = new Baron(); Assert.AreEqual(new Cost(4), card.BaseCost); Assert.AreEqual(1, card.Benefit.Buys); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); Assert.AreEqual(Edition.First, card.Edition); } [TestMethod] public void Test_Bridge_Basic() { var card = new Bridge(); Assert.AreEqual(new Cost(4), card.BaseCost); Assert.AreEqual(new Currency(1), card.Benefit.Currency); Assert.AreEqual(1, card.Benefit.Buys); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); } [TestMethod] public void Test_Conspirator_Basic() { var card = new Conspirator(); Assert.AreEqual(new Cost(4), card.BaseCost); Assert.AreEqual(new Currency(2), card.Benefit.Currency); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); } [TestMethod] public void Test_Coppersmith_Basic() { var card = new Coppersmith(); Assert.AreEqual(new Cost(4), card.BaseCost); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); } [TestMethod] public void Test_Courtyard_Basic() { var card = new Courtyard(); Assert.AreEqual(new Cost(2), card.BaseCost); Assert.AreEqual(3, card.Benefit.Cards); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); } [TestMethod] public void Test_Duke_Basic() { var card = new Duke(); Assert.AreEqual(new Cost(5), card.BaseCost); Assert.AreEqual(Categories.Card | Categories.Victory, card.Category); } [TestMethod] public void Test_GreatHall_Basic() { var card = new GreatHall(); Assert.AreEqual(new Cost(3), card.BaseCost); Assert.AreEqual(1, card.Benefit.Cards); Assert.AreEqual(1, card.Benefit.Actions); Assert.AreEqual(1, card.VictoryPoints); Assert.AreEqual(Categories.Card | Categories.Action | Categories.Victory, card.Category); } [TestMethod] public void Test_Harem_Basic() { var card = new Harem(); Assert.AreEqual(new Cost(6), card.BaseCost); Assert.AreEqual(new Currency(2), card.Benefit.Currency); Assert.AreEqual(2, card.VictoryPoints); Assert.AreEqual(Categories.Card | Categories.Treasure | Categories.Victory, card.Category); } [TestMethod] public void Test_Ironworks_Basic() { var card = new Ironworks(); Assert.AreEqual(new Cost(4), card.BaseCost); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); } [TestMethod] public void Test_Masquerade_Basic() { var card = new Masquerade(); Assert.AreEqual(new Cost(3), card.BaseCost); Assert.AreEqual(2, card.Benefit.Cards); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); } [TestMethod] public void Test_MiningVillage_Basic() { var card = new MiningVillage(); Assert.AreEqual(new Cost(4), 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_Minion_Basic() { var card = new Minion(); Assert.AreEqual(new Cost(5), card.BaseCost); Assert.AreEqual(1, card.Benefit.Actions); Assert.AreEqual(Categories.Card | Categories.Action | Categories.Attack, card.Category); } [TestMethod] public void Test_Nobles_Basic() { var card = new Nobles(); Assert.AreEqual(new Cost(6), card.BaseCost); Assert.AreEqual(2, card.VictoryPoints); Assert.AreEqual(Categories.Card | Categories.Action | Categories.Victory, card.Category); } [TestMethod] public void Test_Pawn_Basic() { var card = new Pawn(); Assert.AreEqual(new Cost(2), card.BaseCost); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); } [TestMethod] public void Test_Saboteur_Basic() { var card = new Saboteur(); Assert.AreEqual(new Cost(5), card.BaseCost); Assert.AreEqual(Categories.Card | Categories.Action | Categories.Attack, card.Category); } [TestMethod] public void Test_Scout_Basic() { var card = new Scout(); Assert.AreEqual(new Cost(4), card.BaseCost); Assert.AreEqual(1, card.Benefit.Actions); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); } [TestMethod] public void Test_SecretChamber_Basic() { var card = new SecretChamber(); Assert.AreEqual(new Cost(2), card.BaseCost); Assert.AreEqual(Categories.Card | Categories.Action | Categories.Reaction, card.Category); } [TestMethod] public void Test_ShantyTown_Basic() { var card = new ShantyTown(); Assert.AreEqual(new Cost(3), card.BaseCost); Assert.AreEqual(2, card.Benefit.Actions); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); } [TestMethod] public void Test_Steward_Basic() { var card = new Steward(); Assert.AreEqual(new Cost(3), card.BaseCost); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); } [TestMethod] public void Test_Swindler_Basic() { var card = new Swindler(); Assert.AreEqual(new Cost(3), card.BaseCost); Assert.AreEqual(new Currency(2), card.Benefit.Currency); Assert.AreEqual(Categories.Card | Categories.Action | Categories.Attack, card.Category); } [TestMethod] public void Test_Torturer_Basic() { var card = new Torturer(); 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_TradingPost_Basic() { var card = new TradingPost(); Assert.AreEqual(new Cost(5), card.BaseCost); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); } [TestMethod] public void Test_Tribute_Basic() { var card = new Tribute(); Assert.AreEqual(new Cost(5), card.BaseCost); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); } [TestMethod] public void Test_Upgrade_Basic() { var card = new Upgrade(); Assert.AreEqual(new Cost(5), card.BaseCost); Assert.AreEqual(1, card.Benefit.Cards); Assert.AreEqual(1, card.Benefit.Actions); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); } [TestMethod] public void Test_WishingWell_Basic() { var card = new WishingWell(); Assert.AreEqual(new Cost(3), card.BaseCost); Assert.AreEqual(1, card.Benefit.Cards); Assert.AreEqual(1, card.Benefit.Actions); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); } } }