@@ -0,0 +1,1506 @@
+//@@author A0147984L%0Apackage seedu.address.model.task;%0A%0Aimport static org.junit.Assert.assertFalse;%0Aimport static org.junit.Assert.assertTrue;%0A%0Aimport org.junit.Test;%0A%0Aimport seedu.address.model.task.Date;%0A%0Apublic class DateTest %7B%0A%0A    @Test%0A    public void isValidDate() %7B%0A        // invalid date%0A        assertFalse(Date.isValidDate(%22 %22)); // space only%0A        assertFalse(Date.isValidDate(%22*%22)); // non-alphanumeric%0A        assertFalse(Date.isValidDate(%22month%22)); // contains alphabets%0A        assertFalse(Date.isValidDate(%220/1%22)); // day less than 1%0A        assertFalse(Date.isValidDate(%221/0%22)); // month less than 1%0A        assertFalse(Date.isValidDate(%221/13%22)); // month more than 12%0A        assertFalse(Date.isValidDate(%2232/1%22)); // day exceeds limit%0A        assertFalse(Date.isValidDate(%2230/2%22)); // day exceeds limit%0A        assertFalse(Date.isValidDate(%2231/4%22)); // day exceeds limit%0A%0A        // valid date%0A        assertTrue(Date.isValidDate(%22%22)); // empty%0A        assertTrue(Date.isValidDate(%221/1%22)); // both day and month are 1 digit%0A        assertTrue(Date.isValidDate(%2201/1%22)); // day is 2 digits%0A        assertTrue(Date.isValidDate(%2201/01%22)); // month is 2 digits beginning with 0%0A        assertTrue(Date.isValidDate(%221/12%22)); // month is 2 digits beginning with 1%0A        assertTrue(Date.isValidDate(%2231/1%22)); // day is 31 for January%0A        assertTrue(Date.isValidDate(%2230/11%22)); // day is 30 for November%0A        assertTrue(Date.isValidDate(%2229/2%22)); // day is 29 for February%0A    %7D%0A%7D%0A

Test Date regex