diff --git a/ganttzk/src/test/java/org/zkoss/ganttz/data/criticalpath/CriticalPathCalculatorTest.java b/ganttzk/src/test/java/org/zkoss/ganttz/data/criticalpath/CriticalPathCalculatorTest.java index 5a7b1749d..6824bdbc4 100644 --- a/ganttzk/src/test/java/org/zkoss/ganttz/data/criticalpath/CriticalPathCalculatorTest.java +++ b/ganttzk/src/test/java/org/zkoss/ganttz/data/criticalpath/CriticalPathCalculatorTest.java @@ -3077,7 +3077,7 @@ public class CriticalPathCalculatorTest { } @Test - public void examplePairOfTasksWithDependencyFirstWithBiggerConstraintAndSecondWithEqualConstraint() { + public void examplePairOfTasksWithDependencyFirstWithBiggerConstraintAndSecondWithEqualConstraint1() { givenPairOfTasksWithDependencyFirstWithBiggerConstraintAndSecondWithEqualConstraint( 6, START.plusDays(2), 4, START); List criticalPath = buildCalculator() @@ -3090,4 +3090,29 @@ public class CriticalPathCalculatorTest { } } + @Test + public void examplePairOfTasksWithDependencyFirstWithBiggerConstraintAndSecondWithEqualConstraint2() { + givenPairOfTasksWithDependencyFirstWithBiggerConstraintAndSecondWithEqualConstraint( + 6, START, 4, START.plusDays(5)); + List criticalPath = buildCalculator() + .calculateCriticalPath(diagramGraphExample); + + assertThat(criticalPath.size(), equalTo(2)); + for (ITaskFundamentalProperties task : criticalPath) { + assertThat(daysBetweenStartAndEnd(task), anyOf(equalTo(6), + equalTo(4))); + } + } + + @Test + public void examplePairOfTasksWithDependencyFirstWithBiggerConstraintAndSecondWithEqualConstraint3() { + givenPairOfTasksWithDependencyFirstWithBiggerConstraintAndSecondWithEqualConstraint( + 6, START, 4, START.plusDays(10)); + List criticalPath = buildCalculator() + .calculateCriticalPath(diagramGraphExample); + + assertThat(criticalPath.size(), equalTo(1)); + assertThat(daysBetweenStartAndEnd(criticalPath.get(0)), equalTo(4)); + } + }