Beispiel #1
0
        public void Test_Convert()
        {
            DeckDescriptor dd = StdDeck.Descriptor;

            Assert.AreEqual(CardSet.Empty, NormRank.Convert(CardSet.Empty));
            Assert.AreEqual(dd.FullDeck, NormRank.Convert(dd.FullDeck));
            CardSet cs = new CardSet {
                bits = 0xFFFFFFFFFFFFFFFF
            };

            Assert.AreEqual(cs, NormRank.Convert(cs));

            Assert.AreEqual(dd.GetCardSet("Ac"), NormRank.Convert(dd.GetCardSet("Ac")));
            Assert.AreEqual(dd.GetCardSet("Ac"), NormRank.Convert(dd.GetCardSet("Ad")));
            Assert.AreEqual(dd.GetCardSet("Ac"), NormRank.Convert(dd.GetCardSet("Ah")));
            Assert.AreEqual(dd.GetCardSet("Ac"), NormRank.Convert(dd.GetCardSet("As")));

            Assert.AreEqual(dd.GetCardSet("Ac Kc"), NormRank.Convert(dd.GetCardSet("Ac Kc")));
            Assert.AreEqual(dd.GetCardSet("Ac Kc"), NormRank.Convert(dd.GetCardSet("Ac Kd")));
            Assert.AreEqual(dd.GetCardSet("Ac Kc"), NormRank.Convert(dd.GetCardSet("Ad Kc")));
            Assert.AreEqual(dd.GetCardSet("Ac Kc"), NormRank.Convert(dd.GetCardSet("As Kh")));

            Assert.AreEqual(dd.GetCardSet("3c 3d"), NormRank.Convert(dd.GetCardSet("3c 3d")));
            Assert.AreEqual(dd.GetCardSet("3c 3d"), NormRank.Convert(dd.GetCardSet("3c 3h")));
            Assert.AreEqual(dd.GetCardSet("3c 3d"), NormRank.Convert(dd.GetCardSet("3s 3h")));

            Assert.AreEqual(dd.GetCardSet("2c 3c 3d 4c 4d 4h 6c 6d 6h 6s"),
                            NormRank.Convert(dd.GetCardSet("2d 3s 3h 4c 4h 4d 6s 6d 6h 6c")));
        }
 public KeyT(int handSize, int maxHandSize, CardSet cards)
 {
     HandSize   = (byte)handSize;
     RankCards  = NormRank.Convert(cards);
     FlushCards = ExtractFlush(cards, maxHandSize);
     if (handSize < 5)
     {
         return;
     }
     HandValue = CardSetEvaluator.Evaluate(ref cards);
 }
Beispiel #3
0
        public void Test_CountEquiv()
        {
            DeckDescriptor dd = StdDeck.Descriptor;

            Assert.AreEqual(1, NormRank.CountEquiv(CardSet.Empty, dd));
            Assert.AreEqual(4 * 4 * 4 * 4, NormRank.CountEquiv(dd.GetCardSet("Ac Kd Qc Jh"), dd));
            Assert.AreEqual(16, NormRank.CountEquiv(dd.GetCardSet("Ac Kd"), dd));
            Assert.AreEqual(4, NormRank.CountEquiv(dd.GetCardSet("Kd"), dd));
            Assert.AreEqual(6, NormRank.CountEquiv(dd.GetCardSet("Kc Kd"), dd));
            Assert.AreEqual(4, NormRank.CountEquiv(dd.GetCardSet("Kc Kd Ks"), dd));
            Assert.AreEqual(1, NormRank.CountEquiv(dd.GetCardSet("7c 7d 7s 7h"), dd));
        }