@Test
    public void testCreateDeckWithCardsRemoved() {
        List<Card> removedCards = new ArrayList<Card>();
        removedCards.add(new Card(Suit.CLUB, Rank.ACE));
        removedCards.add(new Card(Suit.HEART, Rank.ACE));
        removedCards.add(new Card(Suit.SPADE, Rank.THREE));
        removedCards.add(new Card(Suit.DIAMOND, Rank.FIVE));        
        ICardDeck deck = new CardDeckStandard(removedCards);
        assertEquals(48, deck.getNumberOfRemainingCards());
        
        while (!deck.isEmpty()) {
            Card retrieved = deck.takeCard();
            assertFalse("A removed card is present in the deck", 
                    removedCards.contains(retrieved));
        }
    }