2 * This program is free software. It comes without any warranty, to
3 * the extent permitted by applicable law. You can redistribute it
4 * and/or modify it under the terms of the Do What The Fuck You Want
5 * To Public License, Version 2, as published by Sam Hocevar. See
6 * http://www.wtfpl.net/ for more details.
8 package com
.github
.sebhoss
.time
;
10 import org
.joda
.time
.LocalDate
;
11 import org
.junit
.Assert
;
12 import org
.junit
.Test
;
14 import com
.github
.sebhoss
.common
.annotation
.CompilerWarnings
;
17 * Test cases for {@link FiscalDateCalculator}.
19 @SuppressWarnings(CompilerWarnings
.STATIC_METHOD
)
20 public class FiscalDateCalculatorTest
{
23 * Ensures that the EarlyFiscalDateCalculator can calculate the calendar date.
26 public void shouldCalculateCalendarDateInEarlyFiscalYear() {
28 final FiscalDateCalculator earlyCalculator
= new EarlyFiscalDateCalculator(11);
29 final int fiscalYear
= 2013;
30 final int fiscalMonth
= 1;
31 final int fiscalDay
= 1;
34 final LocalDate calendarDate
= earlyCalculator
.calculateCalendarDate(fiscalYear
, fiscalMonth
, fiscalDay
);
37 Assert
.assertEquals(2012, calendarDate
.getYear());
38 Assert
.assertEquals(11, calendarDate
.getMonthOfYear());
39 Assert
.assertEquals(1, calendarDate
.getDayOfMonth());
43 * Ensures that the LateFiscalDateCalculator can calculate the calendar date.
46 public void shouldCalculateCalendarDateInLateFiscalYear() {
48 final FiscalDateCalculator earlyCalculator
= new LateFiscalDateCalculator(3);
49 final int fiscalYear
= 2013;
50 final int fiscalMonth
= 1;
51 final int fiscalDay
= 1;
54 final LocalDate calendarDate
= earlyCalculator
.calculateCalendarDate(fiscalYear
, fiscalMonth
, fiscalDay
);
57 Assert
.assertEquals(2013, calendarDate
.getYear());
58 Assert
.assertEquals(3, calendarDate
.getMonthOfYear());
59 Assert
.assertEquals(1, calendarDate
.getDayOfMonth());