001 package org.hackystat.utilities.time.interval; 002 003 import junit.framework.TestCase; 004 005 import org.hackystat.utilities.time.period.Day; 006 import org.hackystat.utilities.time.period.Week; 007 008 /** 009 * Tests week interval. 010 * 011 * @author Hongbing Kou 012 * @version $Id: TestWeekInterval.java,v 1.1.1.1 2005/10/20 23:56:40 johnson Exp $ 013 */ 014 public class TestWeekInterval extends TestCase { 015 016 /** 017 * Tests week interval type. 018 * 019 * @throws Exception If error in test. 020 */ 021 public void testWeekInterval() throws Exception { 022 WeekInterval interval = new WeekInterval("03-Aug-2003 to 09-Aug-2003", 023 "28-Dec-2003 to 03-Jan-2004"); 024 assertFalse("Test interval type is daily", interval.isDailyInterval()); 025 assertTrue("Test interval type is not weekly", interval.isWeeklyInterval()); 026 assertFalse("Test interval type is not monthly", interval.isMonthlyInterval()); 027 028 assertEquals("Checking week interval name", "Week", interval.getIntervalType()); 029 030 assertEquals("Test start week", new Week(Day.getInstance(2003, 7, 3)), interval.getStartWeek()); 031 assertEquals("Test end week", new Week(Day.getInstance(2003, 11, 28)), interval.getEndWeek()); 032 033 interval = new WeekInterval("03-Aug-2003 to 09-Aug-2003", "03-Aug-2003 to 09-Aug-2003"); 034 035 assertEquals("Test toString() of WeekInterval", "Week Interval : 09-Aug-2003 ~ " 036 + "09-Aug-2003", interval.toString()); 037 } 038 039 /** 040 * Tests week interval constructor with single day. 041 * 042 * @throws Exception If failed to construct interval. 043 */ 044 public void testDayWeekInterval() throws Exception { 045 Day day1 = Day.getInstance(2005, 2, 3); 046 Day day2 = Day.getInstance(2005, 4, 3); 047 048 WeekInterval interval = new WeekInterval("03-Mar-2005", "03-May-2005"); 049 050 assertFalse("Test interval type is daily", interval.isDailyInterval()); 051 assertTrue("Test interval type is not weekly", interval.isWeeklyInterval()); 052 assertFalse("Test interval type is not monthly", interval.isMonthlyInterval()); 053 054 assertEquals("Checking week interval name", "Week", interval.getIntervalType()); 055 assertEquals("Test start week", new Week(day1), interval.getStartWeek()); 056 assertEquals("Test end week", new Week(day2), interval.getEndWeek()); 057 } 058 }