def test_fullhouse_compare(self): d = self.d # d7 c9 c7 s9 ca : da sa : s7 sj : d9 c2 fullhouse1 = Hand.get_fullhouse([d.da, d.sa, d.c9, d.s9, d.ca]) fullhouse2 = Hand.get_fullhouse([d.s7, d.d7, d.c9, d.c7, d.s9]) fullhouse3 = Hand.get_fullhouse([d.d9, d.d7, d.c9, d.c7, d.s9]) assert(fullhouse1 is not None) assert(fullhouse1 > fullhouse2 and fullhouse2 < fullhouse1) assert(fullhouse2 < fullhouse3 and fullhouse3 > fullhouse2) assert(fullhouse3 < fullhouse1 and fullhouse1 > fullhouse3)
def test_fullhouse(self): d = self.d hand = Hand.get_fullhouse([d.dk, d.ck, d.sk, d.sj, d.cj]) assert(hand is not None and hand.category == Hand.FULLHOUSE) hand = Hand.get_fullhouse([d.dk, d.ck, d.sj, d.cj, d.ht]) assert(hand is None) hand = Hand.get_fullhouse([d.hk, d.ck, d.sk, d.dk, d.dj]) assert(hand is None) hand = Hand.get_fullhouse([d.dk, d.dj, d.cj, d.ck, d.sj]) assert(hand is not None and hand.category == Hand.FULLHOUSE) hand = Hand.get_fullhouse([d.dj, d.dk, d.cq, d.sj, d.h9]) assert(hand is None)
def test_different_categories_compare(self): d = self.d hands = [Hand.get_highcard([d.h6, d.c9, d.d2, d.ck, d.cj]), Hand.get_pair([d.cj, d.sq, d.d2, d.c2, d.s4]), Hand.get_twopair([d.sj, d.cq, d.da, d.dq, d.hj]), Hand.get_threeofakind([d.d3, d.h8, d.c4, d.d8, d.s8]), Hand.get_straight([d.d7, d.h4, d.c5, d.c3, d.d6]), Hand.get_flush([d.h4, d.h8, d.h5, d.hq, d.h2]), Hand.get_fullhouse([d.d8, d.c8, d.s6, d.s8, d.c6]), Hand.get_fourofakind([d.h9, d.c7, d.d9, d.c9, d.s9]), Hand.get_straightflush([d.c3, d.c5, d.c4, d.c2, d.c6])] for hand in hands: assert(hand is not None) for hand1, hand2 in combinations(hands, 2): assert(hand1 < hand2) hands.reverse() for hand1, hand2 in combinations(hands, 2): assert(hand1 > hand2)