haorenhui
2023-10-30 6d6cc10d9e8e242661da7fd655dec155a09d676c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Quintiq file version 2.0
#parent: #root
Method VerifyCurrencyRate (
  MacroPlan macroplan,
  String currencyName,
  Date startDate,
  Real expectedRate
)
{
  Description: 'Verify the expected currency rate for the given currency and start date.'
  TextBody:
  [*
    currency := select( macroplan, Currency_MP, currency, currency.Name() = currencyName );
    
    if( this.Run().AssertNotIsNull( currency, 'Could not find currency with Name = ' + currencyName ) )
    {
      currencyRate := select( currency, CurrencyRate_MP, cr, cr.Start() = startDate );
      
      if( this.Run().AssertNotIsNull( currencyRate, 'Could not find currency rate for "' + currency.Name() + '" starting on ' + [String]startDate + '.' ) )
      {
        this.Run().AssertEqual( expectedRate, currencyRate.Rate(), 'Expected the currency "' + currency.Name() + '" to have Rate = ' + [String]expectedRate + ' on ' + [String]startDate + '.' );
      }
    }
  *]
  InterfaceProperties { Accessibility: 'Module' }
}