using DominionBase; using DominionBase.Cards; using DominionBase.Players; using Microsoft.VisualStudio.TestTools.UnitTesting; using Moq; namespace DominionBaseUnitTest.Cards { [TestClass] public abstract class UnitTestCards { internal Mock mockGame; internal Mock mockPlayer; internal Mock mockSupply; internal Mock mockTable; [TestInitialize] public void TestInitialize() { mockGame = new Mock(); mockSupply = new Mock(); mockTable = new Mock(); mockPlayer = new Mock(); mockGame.SetupGet(_ => _.Table).Returns(mockTable.Object); mockGame.Setup(_ => _.ComputeCost(It.IsAny())).Returns(c => c.BaseCost); mockPlayer.SetupGet(_ => _._Game).Returns(mockGame.Object); mockPlayer.Setup(_ => _.RetrieveCardFrom(It.IsAny(), It.IsAny())) .Returns((dl, c) => c); mockPlayer.Setup(_ => _.RetrieveCardsFrom(It.IsAny(), It.IsAny>())) .Returns>((dl, ic) => ic); } } }