From 553ab2d5ca405b4a28cb01f1a1118c23264f93bd Mon Sep 17 00:00:00 2001
From: Thomas Fabre <tfabre@takima.fr>
Date: Fri, 23 Jun 2023 13:32:53 +0200
Subject: [PATCH] Refactor fives with Roll

---
 src/main/java/io/takima/Yatzy.java     | 14 ++++----------
 src/test/java/io/takima/YatzyTest.java |  6 +++---
 2 files changed, 7 insertions(+), 13 deletions(-)

diff --git a/src/main/java/io/takima/Yatzy.java b/src/main/java/io/takima/Yatzy.java
index cabdd3f..5d4d0ec 100644
--- a/src/main/java/io/takima/Yatzy.java
+++ b/src/main/java/io/takima/Yatzy.java
@@ -38,6 +38,10 @@ public final class Yatzy {
         return sumDiceThatMatchWithValue(roll, 4);
     }
 
+    public static int fives(Roll roll) {
+        return sumDiceThatMatchWithValue(roll, 5);
+    }
+
     public static int pair(int d1, int d2, int d3, int d4, int d5) {
         int[] counts = new int[6];
         counts[d1 - 1]++;
@@ -175,16 +179,6 @@ public final class Yatzy {
             return 0;
     }
 
-    public int fives() {
-        int s = 0;
-        for (int i = 0; i < dice.length; i++) {
-            if (dice[i] == 5) {
-                s += 5;
-            }
-        }
-        return s;
-    }
-
     public int sixes() {
         int sum = 0;
         for (int at = 0; at < dice.length; at++) {
diff --git a/src/test/java/io/takima/YatzyTest.java b/src/test/java/io/takima/YatzyTest.java
index 707d73a..b37b688 100644
--- a/src/test/java/io/takima/YatzyTest.java
+++ b/src/test/java/io/takima/YatzyTest.java
@@ -66,9 +66,9 @@ class YatzyTest {
     @Test
     void fivesShouldSumAllFiveDices() {
         assertAll(
-            () -> assertEquals(10, new Yatzy(4, 4, 4, 5, 5).fives()),
-            () -> assertEquals(15, new Yatzy(4, 4, 5, 5, 5).fives()),
-            () -> assertEquals(20, new Yatzy(4, 5, 5, 5, 5).fives())
+            () -> assertEquals(10, Yatzy.fives(roll(4, 4, 4, 5, 5))),
+            () -> assertEquals(15, Yatzy.fives(roll(4, 4, 5, 5, 5))),
+            () -> assertEquals(20, Yatzy.fives(roll(4, 5, 5, 5, 5)))
         );
     }
 
-- 
GitLab