yanweiyuan3
2023-08-09 588bc7829387dfc761cc25f06f77d4c81818bd10
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Quintiq file version 2.0
#parent: #root
Method VerifySalesDemand (
  Forecast salesDemand,
  Real expectedTotalDays,
  Number expectedSalesDemandInPeriodsCount
)
{
  Description: 'Verify sales demand spanning total days and has number of sales demand in periods created.'
  TextBody:
  [*
    sdPeriods := selectset( salesDemand, SalesDemandInPeriod, sdip, true );
    
    errorSuffix := ' as start = ' + salesDemand.StartDate().Format( 'D-M-yy' ) + 
                   ' and end = ' + salesDemand.EndDate().Format( 'D-M-yy' ) + '.';
    
    sdDays := sum( sdPeriods, Elements, sdip, true, sdip.DurationInDays() );
    this.Run().AssertEqual( expectedTotalDays, sdDays, 'Expected total days ' + [String]expectedTotalDays + errorSuffix);
    
    // Verify exactly 3 sales demand in periods (partial Jan, Feb, partial Mar)
    this.Run().AssertEqual( expectedSalesDemandInPeriodsCount, sdPeriods.Size(), 'Expected ' + [String]expectedSalesDemandInPeriodsCount + ' sales demand in periods ' + errorSuffix );
  *]
  InterfaceProperties { Accessibility: 'Module' }
}