public void ThreeOfAKindFound() { var checker = new ThreeOfAKindChecker(); var value = checker.HandValue(_hands[3]); value.Should().Be(3.140706m); }
public void ThreeOfAKindTwoDeucesFound() { var checker = new ThreeOfAKindChecker(); var value = checker.HandValue(_hands[1]); value.Should().Be(3.120605m); }
public void ThreeOfAKindOneDeuceFound() { var checker = new ThreeOfAKindChecker(); var value = checker.HandValue(_hands[2]); value.Should().Be(3.120505m); }
public void ThreeOfAKindNotFound() { var checker = new ThreeOfAKindChecker(); for (var i = 0; i < 9; i++) { if (i != 3 && i != 6 && i != 7) { var value = checker.HandValue(_hands[i]); value.Should().Be(0, _hands[i].Select(c => c.ToString()).Aggregate((a, b) => a + " " + b)); } } }
public void ThreeOfAKindNotFound() { var checker = new ThreeOfAKindChecker(); for (var i = 0; i < _hands.Count; i++) { if (!new[] { 1, 2, 3, 6, 7, 13, 14, 15, 16 }.Contains(i)) { var value = checker.HandValue(_hands[i]); value.Should().Be(0, _hands[i].Select(c => c.ToString()).Aggregate((a, b) => a + " " + b)); } } }
public static PokerCombinationChecker GetChecker() { var highCard = new HighCardChecker(); var onePair = new OnePairChecker() .SuccessiveHand(highCard); var twoPair = new TwoPairChecker() .SuccessiveHand(onePair); var threeOfAKind = new ThreeOfAKindChecker() .SuccessiveHand(twoPair); var straight = new StraightChecker() .SuccessiveHand(threeOfAKind); var flush = new FlushChecker() .SuccessiveHand(straight); var fullHouse = new FullHouseChecker() .SuccessiveHand(flush); var fourOfAKind = new FourOfAKindChecker() .SuccessiveHand(fullHouse); var straightFlush = new StraightFlushChecker() .SuccessiveHand(fourOfAKind); return(straightFlush); }
static PokerCombinationChecker GetChecker() { var highCard = new HighCardChecker(); var onePair = new OnePairChecker() .SuccessiveHand(highCard); var twoPair = new TwoPairChecker() .SuccessiveHand(onePair); var threeOfAKind = new ThreeOfAKindChecker() .SuccessiveHand(twoPair); var straight = new StraightChecker() .SuccessiveHand(threeOfAKind); var flush = new FlushChecker() .SuccessiveHand(straight); var fullHouse = new FullHouseChecker() .SuccessiveHand(flush); var fourOfAKind = new FourOfAKindChecker() .SuccessiveHand(fullHouse); var straightFlush = new StraightFlushChecker() .SuccessiveHand(fourOfAKind); return straightFlush; }