Пример #1
0
        public void TryDrawReturnsFalseIfAflegstapelIsEmpty()
        {
            var cards = GetCards(0);
            var deck  = new Trekstapel(cards);

            Assert.IsFalse(deck.TryDraw(out _));
        }
Пример #2
0
        public void TryDrawReturnsTrueIfCardIsDrawn()
        {
            var cards = GetCards(1);
            var deck  = new Trekstapel(cards);

            Assert.IsTrue(deck.TryDraw(out _));
        }
Пример #3
0
        public void DeckBegintMetEvenveelKaartenAlsAangeleverdInConstructor(int numberOfCards)
        {
            var cards = GetCards(numberOfCards);
            var deck  = new Trekstapel(cards);
            var count = deck.Count;

            Assert.AreEqual(cards.Count, count);
        }
Пример #4
0
        public void IfCardIsDrawnCountDecreases()
        {
            var cards = GetCards(10);
            var deck  = new Trekstapel(cards);

            deck.TryDraw(out _);
            Assert.AreEqual(9, deck.Count);

            deck.TryDraw(out _);
            Assert.AreEqual(8, deck.Count);
        }
Пример #5
0
        public void DeckGeeftKaartenTerugInVolgordeVanAanleveren()
        {
            var cards = GetCards(10);
            var deck  = new Trekstapel(cards);

            deck.TryDraw(out var drawnCard);

            Assert.IsTrue(ReferenceEquals(cards[0], drawnCard));

            deck.TryDraw(out drawnCard);
            Assert.IsTrue(ReferenceEquals(cards[1], drawnCard));
        }
Пример #6
0
        public void TrekstapelDoesNotFireTrekstapelEmptiedEventWhenDeckIsAlreadyEmpty()
        {
            var deck = new Trekstapel(GetCards(0));

            AssertExtension.DoesNotTriggerEvent(x => deck.TrekstapelEmptied += x, () => deck.TryDraw(out _));
        }
Пример #7
0
        public void TrekstapelDoesNotFireTrekstapelEmptiedEventWhenCardIsDrawnWithMoreCardsLeft()
        {
            var deck = new Trekstapel(GetCards(2));

            AssertExtension.DoesNotTriggerEvent(x => deck.TrekstapelEmptied += x, () => deck.TryDraw(out _));
        }
Пример #8
0
        public void TrekstapelFiresTrekstapelEmptiedEventWhenLastCardIsDrawn()
        {
            var deck = new Trekstapel(GetCards(1));

            AssertExtension.TriggersEvent(x => deck.TrekstapelEmptied += x, () => deck.TryDraw(out _));
        }