public bool Analyze(IEnumerable <HandHistories.Objects.Cards.Card> cards, OmahaHandGridItem handGridItem) { if (cards == null || cards.Count() < 4 || handGridItem == null) { return(false); } return(cards.GroupBy(x => x.Rank).Any(x => x.Count() == 4)); }
public bool Analyze(IEnumerable <HandHistories.Objects.Cards.Card> cards, OmahaHandGridItem handGridItem) { var item = handGridItem as WrapsAndRundownsHandGridItem; if (cards == null || cards.Count() < 4 || item == null) { return(false); } return(OmahaWrapAnalyzerHelper.IsWrap(cards, item.SelectedGap.Item2, 4)); }
public bool Analyze(IEnumerable <HandHistories.Objects.Cards.Card> cards, OmahaHandGridItem handGridItem) { var item = handGridItem as HoleCardStructureHandGridItem; if (cards == null || cards.Count() < 4 || handGridItem == null || item == null) { return(false); } return(cards.Where(x => x.Rank == "A").Count() == item.SelectedNumber); }
public bool Analyze(IEnumerable <HandHistories.Objects.Cards.Card> cards, OmahaHandGridItem handGridItem) { var item = handGridItem as HoleCardStructureHandGridItem; if (cards == null || cards.Count() < 4 || handGridItem == null || item == null) { return(false); } var rankTwo = HandHistories.Objects.Cards.Card.GetRankNumericValue("2"); var rankFive = HandHistories.Objects.Cards.Card.GetRankNumericValue("5"); return(cards.Where(x => x.RankNumericValue >= rankTwo && x.RankNumericValue <= rankFive).Count() == item.SelectedNumber); }
public void TestOmahaNoPairAnalyzer() { var analyzer = new OmahaNoPairAnalyzer(); var item = new OmahaHandGridItem(); var cards = CardGroup.Parse("4c8cKcAc"); var cards2 = CardGroup.Parse("KcKd4c5c"); var cards3 = CardGroup.Parse("5c5d9c9d"); var cards4 = CardGroup.Parse("6d6c6h2c"); var cards5 = CardGroup.Parse("6c6d6h6s"); Assert.That(analyzer.Analyze(cards, item), Is.True); Assert.That(analyzer.Analyze(cards2, item), Is.False); Assert.That(analyzer.Analyze(cards3, item), Is.False); Assert.That(analyzer.Analyze(cards4, item), Is.False); Assert.That(analyzer.Analyze(cards5, item), Is.False); }
public bool Analyze(IEnumerable <HandHistories.Objects.Cards.Card> cards, OmahaHandGridItem handGridItem) { if (cards == null || cards.Count() < 4 || handGridItem == null) { return(false); } var groups = cards.GroupBy(x => x.Suit).Where(x => x.Count() > 1); if (groups == null || groups.Count() != 1 || groups.First().Count() != 2) { return(false); } return(groups.First().All(x => x.Rank != HandHistories.Objects.Cards.Card.PossibleRanksHighCardFirst.First())); }
public void TestOmahaDoubleSuitedAnalyzer() { var analyzer = new OmahaDoubleSuitedAnalyzer(); var item = new OmahaHandGridItem(); var cards = CardGroup.Parse("6c6d6h6s"); var cards2 = CardGroup.Parse("Ac2c4d4s"); var cards3 = CardGroup.Parse("2c3c3d4c"); var cards4 = CardGroup.Parse("Ac2c3d4d"); var cards5 = CardGroup.Parse("2c3c4c5d"); var cards6 = CardGroup.Parse("2c3c4sAd"); Assert.That(analyzer.Analyze(cards, item), Is.False); Assert.That(analyzer.Analyze(cards2, item), Is.False); Assert.That(analyzer.Analyze(cards3, item), Is.False); Assert.That(analyzer.Analyze(cards4, item), Is.True); Assert.That(analyzer.Analyze(cards5, item), Is.False); Assert.That(analyzer.Analyze(cards6, item), Is.False); }
public bool Analyze(IEnumerable <HandHistories.Objects.Cards.Card> cards, OmahaHandGridItem handGridItem) { var item = handGridItem as OnePairHandGridItem; if (cards == null || cards.Count() < 4 || item == null) { return(false); } var groups = cards.GroupBy(x => x.Rank).Where(x => x.Count() >= 2); if (groups == null || groups.Count() != 1 || groups.First().Count() != 2) { return(false); } var selectedRank = item.SelectedRank.Item2; return(string.IsNullOrEmpty(selectedRank) ? true : groups.First().Key == selectedRank); }