From 0813ae3b8a47ad16cec6d471344e7b68b14f0771 Mon Sep 17 00:00:00 2001
From: Colin DAMON <cdamon@ippon.fr>
Date: Tue, 24 Nov 2020 13:41:30 +0100
Subject: [PATCH] Extract floor entry recuperation

---
 .../src/main/java/fr/ippon/kata/numeral/Numerals.java       | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/tcr-roman-numerals/src/main/java/fr/ippon/kata/numeral/Numerals.java b/tcr-roman-numerals/src/main/java/fr/ippon/kata/numeral/Numerals.java
index 9f8f42a1..6f0cdb03 100644
--- a/tcr-roman-numerals/src/main/java/fr/ippon/kata/numeral/Numerals.java
+++ b/tcr-roman-numerals/src/main/java/fr/ippon/kata/numeral/Numerals.java
@@ -10,7 +10,11 @@ public class Numerals {
   private static final NavigableMap<Integer, String> CONVERSIONS = buildConversions();
 
   public static String toRoman(int arabic) {
-    return Optional.ofNullable(CONVERSIONS.floorEntry(arabic)).map(romanRepresentation(arabic)).orElse("");
+    return highestKnownConversion(arabic).map(romanRepresentation(arabic)).orElse("");
+  }
+
+  private static Optional<Entry<Integer, String>> highestKnownConversion(int arabic) {
+    return Optional.ofNullable(CONVERSIONS.floorEntry(arabic));
   }
 
   private static Function<Entry<Integer, String>, String> romanRepresentation(int arabic) {
-- 
GitLab