From 978bd044fe982332820f7a66082c5a082f405286 Mon Sep 17 00:00:00 2001 From: graywolf336 Date: Tue, 24 Dec 2013 19:36:14 -0600 Subject: [PATCH] Fix the time parsing not defaulting to minutes & add another test for it --- src/main/java/com/graywolf336/jail/Util.java | 21 ++++++++----------- .../com/graywolf336/jail/TestTimeParsing.java | 12 ++++++++--- 2 files changed, 18 insertions(+), 15 deletions(-) diff --git a/src/main/java/com/graywolf336/jail/Util.java b/src/main/java/com/graywolf336/jail/Util.java index cf371b4..e68949b 100644 --- a/src/main/java/com/graywolf336/jail/Util.java +++ b/src/main/java/com/graywolf336/jail/Util.java @@ -79,26 +79,23 @@ public class Util { String units = match.group(2); if ("seconds".equals(units) || "second".equals(units) || "s".equals(units)) t = TimeUnit.MILLISECONDS.convert(Long.valueOf(match.group(1)), TimeUnit.SECONDS); - if ("minutes".equals(units) || "minute".equals(units) || "mins".equals(units) || "min".equals(units) || "m".equals(units)) + else if ("minutes".equals(units) || "minute".equals(units) || "mins".equals(units) || "min".equals(units) || "m".equals(units)) t = TimeUnit.MILLISECONDS.convert(Long.valueOf(match.group(1)), TimeUnit.MINUTES); else if ("hours".equals(units) || "hour".equals(units) || "h".equals(units)) t = TimeUnit.MILLISECONDS.convert(Long.valueOf(match.group(1)), TimeUnit.HOURS); else if ("days".equals(units) || "day".equals(units) || "d".equals(units)) t = TimeUnit.MILLISECONDS.convert(Long.valueOf(match.group(1)), TimeUnit.DAYS); + else { + try { + t = TimeUnit.MILLISECONDS.convert(Long.parseLong(time), TimeUnit.MINUTES); + }catch(NumberFormatException e) { + throw new Exception("Invalid format."); + } + } }else { - try { - Long l = Long.parseLong(time); - - t = TimeUnit.MILLISECONDS.convert(l, TimeUnit.MINUTES); - }catch(NumberFormatException e) { - throw new Exception("Invalid format."); - } + throw new Exception("Invalid format."); } return Long.valueOf(t); } - - /* - - */ } diff --git a/src/test/java/test/java/com/graywolf336/jail/TestTimeParsing.java b/src/test/java/test/java/com/graywolf336/jail/TestTimeParsing.java index 7300003..804c648 100644 --- a/src/test/java/test/java/com/graywolf336/jail/TestTimeParsing.java +++ b/src/test/java/test/java/com/graywolf336/jail/TestTimeParsing.java @@ -9,11 +9,17 @@ import com.graywolf336.jail.Util; public class TestTimeParsing { + @Test + public void testNoFormat() throws Exception { + assertThat(60000L, is(Util.getTime("1"))); + assertThat(360000L, is(Util.getTime("6"))); + } + @Test public void testSeconds() throws Exception { - assertThat(1000L, is(Util.getTime("1s"))); - assertThat(1000L, is(Util.getTime("1second"))); - assertThat(1000L, is(Util.getTime("1seconds"))); + assertThat(2000L, is(Util.getTime("2s"))); + assertThat(2000L, is(Util.getTime("2second"))); + assertThat(2000L, is(Util.getTime("2seconds"))); } @Test