ItEr27S06CUAsignacionGrupoRecursosAPlanificacionItEr26S07: Fixed bug and added new test.
This commit is contained in:
parent
5e1a0bc2f7
commit
d432f2ed7a
2 changed files with 53 additions and 2 deletions
|
|
@ -467,7 +467,7 @@ public class OrderLineGroup extends OrderElement implements IOrderLineGroup {
|
|||
RoundingMode.DOWN);
|
||||
}
|
||||
|
||||
if (iterator2.hasNext()) {
|
||||
if (iterator1.hasNext()) {
|
||||
next1 = iterator1.next();
|
||||
} else {
|
||||
next1 = null;
|
||||
|
|
|
|||
|
|
@ -844,7 +844,7 @@ public class OrderElementTest {
|
|||
}
|
||||
|
||||
@Test
|
||||
public void checkCalculateFakeOrderLineGroup()
|
||||
public void checkCalculateFakeOrderLineGroup1()
|
||||
throws DuplicateValueTrueReportGlobalAdvanceException,
|
||||
DuplicateAdvanceAssignmentForOrderElementException {
|
||||
OrderElement orderElement = givenOrderLineGroupWithTwoOrderLines(5000,
|
||||
|
|
@ -880,6 +880,57 @@ public class OrderElementTest {
|
|||
}
|
||||
assertThat(advanceAssignment.getMaxValue(), equalTo(new BigDecimal(
|
||||
11000)));
|
||||
assertThat(advanceAssignment.getAdvanceMeasurements().size(),
|
||||
equalTo(3));
|
||||
assertThat(advanceAssignment.getLastAdvanceMeasurement().getValue(),
|
||||
equalTo(new BigDecimal(5000)));
|
||||
assertThat(advanceAssignment.getLastPercentage(),
|
||||
equalTo(new BigDecimal(45).divide(new BigDecimal(100))
|
||||
.setScale(2)));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void checkCalculateFakeOrderLineGroup2()
|
||||
throws DuplicateValueTrueReportGlobalAdvanceException,
|
||||
DuplicateAdvanceAssignmentForOrderElementException {
|
||||
OrderElement orderElement = givenOrderLineGroupWithTwoOrderLines(1000,
|
||||
5000);
|
||||
|
||||
List<OrderElement> children = orderElement.getChildren();
|
||||
AdvanceType advanceType = PredefinedAdvancedTypes.UNITS.getType();
|
||||
|
||||
LocalDate one = new LocalDate(2009, 9, 1);
|
||||
LocalDate two = new LocalDate(2009, 9, 2);
|
||||
LocalDate three = new LocalDate(2009, 9, 3);
|
||||
|
||||
addAvanceAssignmentWithMeasurements(children.get(0), advanceType, true,
|
||||
new BigDecimal(10000), one, new BigDecimal(100), two,
|
||||
new BigDecimal(1000), three, new BigDecimal(5000));
|
||||
|
||||
addAvanceAssignmentWithoutMeasurement(children.get(1), advanceType,
|
||||
new BigDecimal(1000), true);
|
||||
|
||||
assertThat(orderElement.getAdvancePercentage(), equalTo(new BigDecimal(
|
||||
8).divide(new BigDecimal(100)).setScale(2)));
|
||||
|
||||
Set<IndirectAdvanceAssignment> indirectAdvanceAssignments = ((OrderLineGroup) orderElement)
|
||||
.getIndirectAdvanceAssignments();
|
||||
assertThat(indirectAdvanceAssignments.size(), equalTo(2));
|
||||
|
||||
DirectAdvanceAssignment advanceAssignment = null;
|
||||
for (IndirectAdvanceAssignment indirectAdvanceAssignment : indirectAdvanceAssignments) {
|
||||
if (indirectAdvanceAssignment.getAdvanceType().equals(advanceType)) {
|
||||
advanceAssignment = ((OrderLineGroup) orderElement)
|
||||
.calculateFakeDirectAdvanceAssignment(indirectAdvanceAssignment);
|
||||
break;
|
||||
}
|
||||
}
|
||||
assertThat(advanceAssignment.getMaxValue(), equalTo(new BigDecimal(
|
||||
11000)));
|
||||
assertThat(advanceAssignment.getAdvanceMeasurements().size(),
|
||||
equalTo(3));
|
||||
assertThat(advanceAssignment.getLastAdvanceMeasurement().getValue(),
|
||||
equalTo(new BigDecimal(5000)));
|
||||
assertThat(advanceAssignment.getLastPercentage(),
|
||||
equalTo(new BigDecimal(45).divide(new BigDecimal(100))
|
||||
.setScale(2)));
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue