コード例 #1
0
ファイル: SnapCardDeckTests.cs プロジェクト: xtbmedia/igiSnap
        public void DeckReturnsNullOnPeekWhenEmpty()
        {
            // Arrange
            ICardOrderingProvider cardOrderingProvider = new SuitMajorSortedCardOrderingProvider();
            ICardDeck             cardDeck             = new SnapCardDeck(cardOrderingProvider);

            // Act
            var test = cardDeck.Peek();

            // Assert
            Assert.IsNull(test);
        }
コード例 #2
0
ファイル: SnapCardDeckTests.cs プロジェクト: xtbmedia/igiSnap
        public void DeckCanPeekCard()
        {
            // Arrange
            ICardOrderingProvider cardOrderingProvider = new SuitMajorSortedCardOrderingProvider();
            ICardDeck             cardDeck             = new SnapCardDeck(cardOrderingProvider);
            ICard card = new SnapCard(Suit.Spades, Rank.Ace);

            // Act
            cardDeck.Add(card);
            var test = cardDeck.Peek();

            // Assert
            Assert.IsFalse(cardDeck.IsEmpty);
        }
コード例 #3
0
ファイル: SnapCardDeckTests.cs プロジェクト: xtbmedia/igiSnap
        public void DeckCanAddCorrectCard()
        {
            // Arrange
            ICardOrderingProvider cardOrderingProvider = new SuitMajorSortedCardOrderingProvider();
            ICardDeck             cardDeck             = new SnapCardDeck(cardOrderingProvider);
            ICard card = new SnapCard(Suit.Spades, Rank.Ace);

            // Act
            cardDeck.Add(card);

            // Assert
            var result = cardDeck.Peek();

            Assert.IsTrue(result.Suit == Suit.Spades && result.Rank == Rank.Ace);
        }
コード例 #4
0
ファイル: SnapCardDeckTests.cs プロジェクト: xtbmedia/igiSnap
        public void DeckCanPeekCorrectCard()
        {
            // Arrange
            ICardOrderingProvider cardOrderingProvider = new SuitMajorSortedCardOrderingProvider();
            ICardDeck             cardDeck             = new SnapCardDeck(cardOrderingProvider);
            ICard card = new SnapCard(Suit.Spades, Rank.Ace);

            // Act
            cardDeck.Add(new SnapCard(Suit.Spades, Rank.Two));
            cardDeck.Add(card);
            cardDeck.Add(new SnapCard(Suit.Hearts, Rank.Queen));

            var test = cardDeck.Peek();

            // Assert
            // As we're using the SortedCardOrderingProvider, the ace of spades should always be the
            // top card in the deck. Given that Peek sees cards from the top of the deck, no matter
            // what we do, if the Ace of Spades is in the deck, Peek() should return it.
            Assert.IsTrue(test.Suit == card.Suit && test.Rank == card.Rank);
        }