public void DealCard_ShouldShuffleDiscardPile_IfNoCardsLeftInDeck() { DealAllCardsInDeck(); var deckVisitor = new CardTestVisitor(); _dealer.Accept(deckVisitor); Assert.AreEqual(0, deckVisitor.Count); _dealer.DealCard(); _dealer.Accept(deckVisitor); Assert.AreEqual(51, deckVisitor.Count); Assert.AreEqual(51, deckVisitor.UniqueCount); }