迭代扑克牌数组并验证花色
我正在使用一个看起来像这样的数组:
cards = [#<Cardshark::Card:0x9200cc @rank=:ace, @suit=:coins>, etc]
4 种套装(硬币、剑、杯子、俱乐部)中的每一种都包含从 7 到 7 的等级 A 和 3 张人头牌,每个“牌组”总共有 40 张牌,
我想写一个rspec 测试以验证数组包含 4 个花色。我开始沿着使用 @cards.select
与使用正则表达式的块一起使用的道路,但很快就变得丑陋了。
处理这个问题的最佳方法是什么?
I'm working with an array that looks like this:
cards = [#<Cardshark::Card:0x9200cc @rank=:ace, @suit=:coins>, etc]
Each of 4 suits (coins, swords, cups, clubs) contains ranks ace through seven and 3 face cards for a total of 40 cards per "deck"
I am looking to write an rspec test to verify that the array contains 4 suits. I started going down the path of using @cards.select
with a block using regular expressions and that got ugly pretty fast.
What's the best way to handle this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
尝试使用 Enumerable#group_by:
在 IRB 中:
Try using Enumerable#group_by:
In IRB: