dhis2-devs team mailing list archive
-
dhis2-devs team
-
Mailing list archive
-
Message #33531
[Branch ~dhis2-devs-core/dhis2/trunk] Rev 17127: SixMonthlyPeriodType, fixed bug
------------------------------------------------------------
revno: 17127
committer: Lars Helge Overland <larshelge@xxxxxxxxx>
branch nick: dhis2
timestamp: Wed 2014-10-15 16:44:21 +0200
message:
SixMonthlyPeriodType, fixed bug
modified:
dhis-2/dhis-api/src/main/java/org/hisp/dhis/period/SixMonthlyAbstractPeriodType.java
dhis-2/dhis-api/src/test/java/org/hisp/dhis/period/SixMonthlyPeriodTypeTest.java
--
lp:dhis2
https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk
Your team DHIS 2 developers is subscribed to branch lp:dhis2.
To unsubscribe from this branch go to https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription
=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/period/SixMonthlyAbstractPeriodType.java'
--- dhis-2/dhis-api/src/main/java/org/hisp/dhis/period/SixMonthlyAbstractPeriodType.java 2014-08-29 10:02:21 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/period/SixMonthlyAbstractPeriodType.java 2014-10-15 14:44:21 +0000
@@ -65,12 +65,12 @@
public Period createPeriod( DateTimeUnit dateTimeUnit, Calendar calendar )
{
int year = calendar.monthsInYear() * dateTimeUnit.getYear();
- int yearMonth = year + dateTimeUnit.getMonth() - getBaseMonth();
+ int yearMonth = year + dateTimeUnit.getMonth() - getBaseMonth() - 1;
// TODO how should we handle years with odd number of months? (Ethiopian)
int months = (((yearMonth % 12) / 6) * 6) + getBaseMonth();
-
+
DateTimeUnit start = new DateTimeUnit( dateTimeUnit );
start.setDay( 1 );
start.setMonth( 1 );
=== modified file 'dhis-2/dhis-api/src/test/java/org/hisp/dhis/period/SixMonthlyPeriodTypeTest.java'
--- dhis-2/dhis-api/src/test/java/org/hisp/dhis/period/SixMonthlyPeriodTypeTest.java 2014-10-14 13:30:08 +0000
+++ dhis-2/dhis-api/src/test/java/org/hisp/dhis/period/SixMonthlyPeriodTypeTest.java 2014-10-15 14:44:21 +0000
@@ -55,7 +55,7 @@
@Test
public void testCreatePeriod()
{
- testDate = new DateTime( 2009, 8, 15, 0, 0 );
+ testDate = new DateTime( 2009, 8, 15, 0, 0 );
startDate = new DateTime( 2009, 7, 1, 0, 0 );
endDate = new DateTime( 2009, 12, 31, 0, 0 );
@@ -65,13 +65,33 @@
assertEquals( startDate.toDate(), period.getStartDate() );
assertEquals( endDate.toDate(), period.getEndDate() );
- testDate = new DateTime( 2009, 4, 15, 0, 0 );
-
- startDate = new DateTime( 2009, 1, 1, 0, 0 );
- endDate = new DateTime( 2009, 6, 30, 0, 0 );
-
- period = periodType.createPeriod( testDate.toDate() );
-
+ testDate = new DateTime( 2009, 4, 15, 0, 0 );
+
+ startDate = new DateTime( 2009, 1, 1, 0, 0 );
+ endDate = new DateTime( 2009, 6, 30, 0, 0 );
+
+ period = periodType.createPeriod( testDate.toDate() );
+
+ assertEquals( startDate.toDate(), period.getStartDate() );
+ assertEquals( endDate.toDate(), period.getEndDate() );
+
+ testDate = new DateTime( 2014, 6, 1, 0, 0 );
+
+ startDate = new DateTime( 2014, 1, 1, 0, 0 );
+ endDate = new DateTime( 2014, 6, 30, 0, 0 );
+
+ period = periodType.createPeriod( testDate.toDate() );
+
+ assertEquals( startDate.toDate(), period.getStartDate() );
+ assertEquals( endDate.toDate(), period.getEndDate() );
+
+ testDate = new DateTime( 2014, 7, 1, 0, 0 );
+
+ startDate = new DateTime( 2014, 7, 1, 0, 0 );
+ endDate = new DateTime( 2014, 12, 31, 0, 0 );
+
+ period = periodType.createPeriod( testDate.toDate() );
+
assertEquals( startDate.toDate(), period.getStartDate() );
assertEquals( endDate.toDate(), period.getEndDate() );
}