using DominionBase; using DominionBase.Cards; using DominionBase.Cards.Promotional; using DominionBase.Enums; using Microsoft.VisualStudio.TestTools.UnitTesting; using Moq; namespace DominionBaseUnitTest.Cards { [TestClass] public class UnitTestPromotional : UnitTestCards { [TestMethod] public void Test_BlackMarket_Basic() { var card = new BlackMarket(); 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_BlackMarketSupply_Basic() { var card = new BlackMarketSupply(); Assert.AreEqual(Categories.Card, card.Category); } [TestMethod] public void Test_Envoy_Basic() { var card = new Envoy(); Assert.AreEqual(new Cost(4), card.BaseCost); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); } [TestMethod] public void Test_Governor_Basic() { var card = new Governor(); Assert.AreEqual(new Cost(5), card.BaseCost); Assert.AreEqual(1, card.Benefit.Actions); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); } [TestMethod] public void Test_Prince_Basic() { var card = new Prince(); Assert.AreEqual(new Cost(8), card.BaseCost); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); } [TestMethod] public void Test_SaunaAvanto_Basic() { var card = new SaunaAvanto(); Assert.AreEqual(new Cost(4), card.BaseCost); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); } [TestMethod] public void Test_Sauna_Basic() { var card = new Sauna(); Assert.AreEqual(new Cost(4), 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_Avanto_Basic() { var card = new Avanto(); Assert.AreEqual(new Cost(5), card.BaseCost); Assert.AreEqual(3, card.Benefit.Cards); Assert.AreEqual(Categories.Card | Categories.Action, card.Category); } [TestMethod] public void Test_Stash_Basic() { var card = new Stash(); Assert.AreEqual(new Cost(5), card.BaseCost); Assert.AreEqual(new Currency(2), card.Benefit.Currency); Assert.AreEqual(Categories.Card | Categories.Treasure, card.Category); Assert.AreEqual(CardBack.Red, card.CardBack); } [TestMethod] public void Test_Summon_Basic() { var card = new Summon(); Assert.AreEqual(new Cost(5), card.BaseCost); Assert.AreEqual(Categories.Event, card.Category); } [TestMethod] public void Test_WalledVillage_Basic() { var card = new WalledVillage(); 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); } } }