From 0aad4cb77a9cbb3e603674f9e2fa254ccc062b46 Mon Sep 17 00:00:00 2001 From: Harald Kuhr Date: Thu, 21 Jun 2012 16:29:04 +0200 Subject: [PATCH] Clean up: Moved test code from main method to test case. --- .../java/com/twelvemonkeys/lang/DateUtil.java | 19 --- .../com/twelvemonkeys/lang/DateUtilTest.java | 120 ++++++++++++++++++ 2 files changed, 120 insertions(+), 19 deletions(-) create mode 100644 common/common-lang/src/test/java/com/twelvemonkeys/lang/DateUtilTest.java diff --git a/common/common-lang/src/main/java/com/twelvemonkeys/lang/DateUtil.java b/common/common-lang/src/main/java/com/twelvemonkeys/lang/DateUtil.java index 7b9e5da3..09e9f5e9 100755 --- a/common/common-lang/src/main/java/com/twelvemonkeys/lang/DateUtil.java +++ b/common/common-lang/src/main/java/com/twelvemonkeys/lang/DateUtil.java @@ -30,9 +30,6 @@ package com.twelvemonkeys.lang; import java.util.Date; import java.util.TimeZone; -import java.text.DateFormat; -import java.text.SimpleDateFormat; -import java.text.ParseException; /** * A utility class with useful date manipulation methods and constants. @@ -191,20 +188,4 @@ public final class DateUtil { int offset = pTimeZone.getOffset(pTime); return (((pTime + offset) / DAY) * DAY) - offset; } - - public static void main(String[] pArgs) throws ParseException { - DateFormat format = new SimpleDateFormat("yyyy.MM.dd HH.mm.ss S"); - - long time = pArgs.length > 0 ? format.parse(pArgs[0]).getTime() : System.currentTimeMillis(); - - System.out.println(time + ": " + format.format(new Date(time))); - time = roundToSecond(time); - System.out.println(time + ": " + format.format(new Date(time))); - time = roundToMinute(time); - System.out.println(time + ": " + format.format(new Date(time))); - time = roundToHour(time); - System.out.println(time + ": " + format.format(new Date(time))); - time = roundToDay(time); - System.out.println(time + ": " + format.format(new Date(time))); - } } diff --git a/common/common-lang/src/test/java/com/twelvemonkeys/lang/DateUtilTest.java b/common/common-lang/src/test/java/com/twelvemonkeys/lang/DateUtilTest.java new file mode 100644 index 00000000..f6dce2ab --- /dev/null +++ b/common/common-lang/src/test/java/com/twelvemonkeys/lang/DateUtilTest.java @@ -0,0 +1,120 @@ +/* + * Copyright (c) 2012, Harald Kuhr + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name "TwelveMonkeys" nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package com.twelvemonkeys.lang; + +import org.junit.Test; + +import java.util.Calendar; +import java.util.TimeZone; + +import static org.junit.Assert.*; + +/** + * DateUtilTest + * + * @author Harald Kuhr + * @author last modified by $Author: haraldk$ + * @version $Id: DateUtilTest.java,v 1.0 11.04.12 16:21 haraldk Exp$ + */ +public class DateUtilTest { + private static Calendar getCalendar(long time) { + Calendar calendar = Calendar.getInstance(TimeZone.getDefault()); + calendar.setTimeInMillis(time); + + return calendar; + } + + @Test + public void testRoundToSecond() { + Calendar calendar = getCalendar(DateUtil.roundToSecond(System.currentTimeMillis())); + + assertEquals(0, calendar.get(Calendar.MILLISECOND)); + } + + @Test + public void testRoundToMinute() { + Calendar calendar = getCalendar(DateUtil.roundToMinute(System.currentTimeMillis())); + + assertEquals(0, calendar.get(Calendar.MILLISECOND)); + assertEquals(0, calendar.get(Calendar.SECOND)); + } + + @Test + public void testRoundToHour() { + Calendar calendar = getCalendar(DateUtil.roundToHour(System.currentTimeMillis())); + + assertEquals(0, calendar.get(Calendar.MILLISECOND)); + assertEquals(0, calendar.get(Calendar.SECOND)); + assertEquals(0, calendar.get(Calendar.MINUTE)); + } + + @Test + public void testRoundToDay() { + Calendar calendar = getCalendar(DateUtil.roundToDay(System.currentTimeMillis())); + + assertEquals(0, calendar.get(Calendar.MILLISECOND)); + assertEquals(0, calendar.get(Calendar.SECOND)); + assertEquals(0, calendar.get(Calendar.MINUTE)); + assertEquals(0, calendar.get(Calendar.HOUR_OF_DAY)); + } + + @Test + public void testCurrentTimeSecond() { + Calendar calendar = getCalendar(DateUtil.currentTimeSecond()); + + assertEquals(0, calendar.get(Calendar.MILLISECOND)); + } + + @Test + public void testCurrentTimeMinute() { + Calendar calendar = getCalendar(DateUtil.currentTimeMinute()); + + assertEquals(0, calendar.get(Calendar.MILLISECOND)); + assertEquals(0, calendar.get(Calendar.SECOND)); + } + + @Test + public void testCurrentTimeHour() { + Calendar calendar = getCalendar(DateUtil.currentTimeHour()); + + assertEquals(0, calendar.get(Calendar.MILLISECOND)); + assertEquals(0, calendar.get(Calendar.SECOND)); + assertEquals(0, calendar.get(Calendar.MINUTE)); + } + + @Test + public void testCurrentTimeDay() { + Calendar calendar = getCalendar(DateUtil.currentTimeDay()); + + assertEquals(0, calendar.get(Calendar.MILLISECOND)); + assertEquals(0, calendar.get(Calendar.SECOND)); + assertEquals(0, calendar.get(Calendar.MINUTE)); + assertEquals(0, calendar.get(Calendar.HOUR_OF_DAY)); + } +}