Exemple #1
0
        public void LeasterStateAnalyzer_CanILoose_Yes()
        {
            var cards = new List <SheepCard>()
            {
                SheepCard.QUEEN_HEARTS,
                SheepCard.N7_DIAMONDS,
                SheepCard.KING_HEARTS
            };
            var playerMock = new Mock <IPlayer>();

            playerMock.Setup(m => m.Cards).Returns(cards);
            var cardsPlayed = new Dictionary <IPlayer, SheepCard>()
            {
                { new Mock <IPlayer>().Object, SheepCard.KING_DIAMONDS },
                { new Mock <IPlayer>().Object, SheepCard.N10_HEARTS },
                { new Mock <IPlayer>().Object, SheepCard.JACK_CLUBS }
            };
            var trickMock = new Mock <ITrick>();

            trickMock.Setup(m => m.CardsByPlayer).Returns(cardsPlayed);
            trickMock.Setup(m => m.IsLegalAddition(SheepCard.QUEEN_HEARTS, playerMock.Object)).Returns(true);
            trickMock.Setup(m => m.IsLegalAddition(SheepCard.N7_DIAMONDS, playerMock.Object)).Returns(true);
            var analyzer = new LeasterStateAnalyzer();
            var actual   = analyzer.CanILoose(playerMock.Object, trickMock.Object);

            Assert.AreEqual(true, actual);
        }
Exemple #2
0
        public void LeasterStateAnalyzer_EarlyInTrick_3Player_Yes()
        {
            var cardsPlayed = new Dictionary <IPlayer, SheepCard>()
            {
                { new Mock <IPlayer>().Object, SheepCard.N7_HEARTS },
            };
            var trickMock = new Mock <ITrick>();

            trickMock.Setup(m => m.CardsByPlayer).Returns(cardsPlayed);
            trickMock.Setup(m => m.IHand.IGame.PlayerCount).Returns(3);
            var analyzer = new LeasterStateAnalyzer();
            var actual   = analyzer.EarlyInTrick(trickMock.Object);

            Assert.AreEqual(true, actual);
        }