/// <summary> /// when pressed, the deck is shuffled. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void bt_shuffle_Click(object sender, EventArgs e) { ShuffleDeckHandler shuffleDeck = new ShuffleDeckHandler(gameManager.ShuffleDeck); shuffleDeck(); checkCardsLeft(); }
public void Deck_ShouldBeShuffled_WhenCalled() { var deck = Helpers.CreateDeck(); var sut = new ShuffleDeckHandler(); var result = sut.Shuffle(deck); result.AssertSuccess(); var success = result.Success().ValueOrDefault(); success.Cards.Should().BeEquivalentTo(deck.Cards); // Check ordering changed success.Cards[0].Should().NotBe(Card.Create(Suits.Clubs, Faces.Ace)); }
/// <summary> /// method to check the number of cards left in the deck. /// user gets asked to shuffle if there is 15 cards or less /// </summary> private void checkCardsLeft() { lbl_cardsLeft.Text = gameManager.cardsLeftInDeck().ToString(); if (gameManager.cardsLeftInDeck() < 30) { lbl_cardsLeft.ForeColor = System.Drawing.Color.Red; if (gameManager.cardsLeftInDeck() < 15) { lbl_cardsLeft.ForeColor = System.Drawing.Color.Red; DialogResult dr = MessageBox.Show(gameManager.cardsLeftInDeck().ToString() + " cards left in deck, do you want to shuffle?", "Warning!", MessageBoxButtons.YesNo); if (dr == DialogResult.Yes) { ShuffleDeckHandler shuffleDeck = new ShuffleDeckHandler(gameManager.ShuffleDeck); shuffleDeck(); checkCardsLeft(); } } } else { lbl_cardsLeft.ForeColor = new System.Drawing.Color(); } }