﻿namespace Poker.Test.Model
{
    using System.Collections.Generic;
    using Contract;
    using Enums;
    using Microsoft.VisualStudio.TestTools.UnitTesting;
    using Poker.Model;

    [TestClass]
    public class HandTest
    {
        [TestMethod]
        public void ToString_ShouldPrintAllCards()
        {
            var cards = new List<ICard>
            {
                new Card(CardFace.Two, CardSuit.Clubs),
                new Card(CardFace.King, CardSuit.Diamonds),
                new Card(CardFace.Ten, CardSuit.Hearts),
                new Card(CardFace.Jack, CardSuit.Spades),
                new Card(CardFace.Ace, CardSuit.Diamonds)
            };

            IHand hand = new Hand(cards);

            const string expected = "2♣ K♦ 10♥ J♠ A♦";
            var actual = hand.ToString();

            Assert.AreEqual(expected, actual);
        }
    }
}
