package model.test; import model.Date; import junit.framework.TestCase; /** * DateTest.java * * @author Christopher Bertels (chbertel@uos.de) * @date 16.09.2008 */ public class DateTest extends TestCase { Date today = new Date(); public void setUp() throws Exception { super.setUp(); } public void testConstructor() { Date d = null; try { d = new Date(0, 0, 0); // ungültiger tag & monat, sollte fehler // werfen } catch (Exception e) { assertEquals(NumberFormatException.class, e.getClass()); } try { d = new Date(1, 0, 0); // ungültiger monat, sollte fehler werfen } catch (Exception e) { assertEquals(NumberFormatException.class, e.getClass()); } d = new Date(1, 1, 0); // gültiges datum, sollte keinen fehler werfen assertNotNull(d); } public void testAddWeeks() { Date start = new Date(8, 1, 2008); Date nextWeek = start.addWeeks(1); assertEquals(15, nextWeek.getDate()); } public void testAddDays() { Date start = new Date(2, 10, 2007); Date nextDay = start.addDays(1); assertEquals(new Date(3, 10, 2007), nextDay); } public void testCompareTo() { Date first = new Date(21, 3, 1980); Date second = new Date(20, 4, 1981); assertTrue(first.compareTo(second) < 0); assertFalse(first.equals(second)); assertEquals(first, (new Date(17, 3, 1980).addDays(4))); assertEquals(0, first.compareTo(new Date(21, 3, 1980))); assertEquals(21, first.getDate()); assertEquals(3, first.getMonth()); assertEquals(1980, first.getYear()); } }