From 00d85c3d10e06b05bcf1984aac8d659d77c96b3f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=93scar=20Gonz=C3=A1lez=20Fern=C3=A1ndez?= Date: Mon, 21 Dec 2009 14:26:31 +0100 Subject: [PATCH] ItEr40S05ValidacionEProbasFuncionaisItEr39S05: [Bug #195] Fixing bug. getDaysDuration is calculate dnow based on the date part --- .../org/navalplanner/business/planner/entities/Task.java | 5 +++-- .../business/test/planner/entities/TaskTest.java | 8 ++++++++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/navalplanner-business/src/main/java/org/navalplanner/business/planner/entities/Task.java b/navalplanner-business/src/main/java/org/navalplanner/business/planner/entities/Task.java index dfd437639..b962dec65 100644 --- a/navalplanner-business/src/main/java/org/navalplanner/business/planner/entities/Task.java +++ b/navalplanner-business/src/main/java/org/navalplanner/business/planner/entities/Task.java @@ -165,8 +165,9 @@ public class Task extends TaskElement { } public Integer getDaysDuration() { - Days daysBetween = Days.daysBetween(toDateTime(getStartDate()), - toDateTime(getEndDate())); + Days daysBetween = Days.daysBetween(new LocalDate( + toDateTime(getStartDate())), new LocalDate( + toDateTime(getEndDate()))); return daysBetween.getDays(); } diff --git a/navalplanner-business/src/test/java/org/navalplanner/business/test/planner/entities/TaskTest.java b/navalplanner-business/src/test/java/org/navalplanner/business/test/planner/entities/TaskTest.java index 284d69634..a11dfcad4 100644 --- a/navalplanner-business/src/test/java/org/navalplanner/business/test/planner/entities/TaskTest.java +++ b/navalplanner-business/src/test/java/org/navalplanner/business/test/planner/entities/TaskTest.java @@ -30,6 +30,7 @@ import static org.junit.Assert.assertTrue; import java.util.Arrays; +import org.joda.time.DateTime; import org.junit.Test; import org.navalplanner.business.orders.entities.HoursGroup; import org.navalplanner.business.orders.entities.OrderLine; @@ -126,6 +127,13 @@ public class TaskTest { assertThat(task.getAssignedHours(), equalTo(8)); } + @Test + public void theDaysBetweenIsCalculatedBasedOnlyOnDatesNotHours() { + task.setStartDate(new DateTime(2008, 10, 5, 23, 0, 0, 0).toDate()); + task.setEndDate(new DateTime(2008, 10, 6, 1, 0, 0, 0).toDate()); + assertThat(task.getDaysDuration(), equalTo(1)); + } + private SpecificResourceAllocation stubResourceAllocationWithAssignedHours( Task task, int hours) {