diff options
| author | mo <mo.khan@gmail.com> | 2019-07-13 16:05:28 -0600 |
|---|---|---|
| committer | mo <mo.khan@gmail.com> | 2019-07-13 16:05:28 -0600 |
| commit | d0ad2baedaa53bb6ff1bc79c12051e34793c5bee (patch) | |
| tree | 4b7d46a66d208139e153f5d731f21970f8bd8a71 | |
| parent | f434c97421d82e93f20b948d3f504edf59c8c93a (diff) | |
validate day/month boundaries
| -rw-r--r-- | src/Q6/WeekDay.java | 3 | ||||
| -rw-r--r-- | src/Q6/WeekDayTest.java | 24 |
2 files changed, 24 insertions, 3 deletions
diff --git a/src/Q6/WeekDay.java b/src/Q6/WeekDay.java index e7ccc11..c1fb573 100644 --- a/src/Q6/WeekDay.java +++ b/src/Q6/WeekDay.java @@ -34,7 +34,8 @@ public class WeekDay { } private void ensureValidDate(int year, int month, int day) { - if (day < 1 || day > MONTHS[month - 1]) throw new IllegalArgumentException(); + if (month < 1 || month > 12 || day < 1 || day > MONTHS[month - 1]) + throw new IllegalArgumentException(); } public static void main(String[] args) { diff --git a/src/Q6/WeekDayTest.java b/src/Q6/WeekDayTest.java index 203d08f..ee2b8e1 100644 --- a/src/Q6/WeekDayTest.java +++ b/src/Q6/WeekDayTest.java @@ -67,7 +67,7 @@ public class WeekDayTest extends TestCase { public void test_getWeekDay_day_too_large() { boolean raised = false; try { - subject.getWeekDay(32, 1, 2100); + subject.getWeekDay(32, 1, 2019); } catch (IllegalArgumentException error) { raised = true; } @@ -77,7 +77,27 @@ public class WeekDayTest extends TestCase { public void test_getWeekDay_day_too_small() { boolean raised = false; try { - subject.getWeekDay(0, 1, 2100); + subject.getWeekDay(0, 1, 2019); + } catch (IllegalArgumentException error) { + raised = true; + } + assertTrue(raised); + } + + public void test_getWeekDay_month_too_large() { + boolean raised = false; + try { + subject.getWeekDay(1, 13, 2019); + } catch (IllegalArgumentException error) { + raised = true; + } + assertTrue(raised); + } + + public void test_getWeekDay_month_too_small() { + boolean raised = false; + try { + subject.getWeekDay(1, 0, 2019); } catch (IllegalArgumentException error) { raised = true; } |
