Exemple #1
0
        public virtual void test_currencyExposure_FxResetNotionalExchange()
        {
            MultiCurrencyAmount expected = MultiCurrencyAmount.of(Currency.GBP, 0.0123d);
            SwapPaymentEventPricer <FxResetNotionalExchange> mockCalledFn = mock(typeof(SwapPaymentEventPricer));

            when(mockCalledFn.currencyExposure(SwapDummyData.FX_RESET_NOTIONAL_EXCHANGE_REC_USD, MOCK_PROV)).thenReturn(expected);
            DispatchingSwapPaymentEventPricer test = new DispatchingSwapPaymentEventPricer(MOCK_NOTIONAL_EXG, mockCalledFn);

            assertEquals(test.currencyExposure(SwapDummyData.FX_RESET_NOTIONAL_EXCHANGE_REC_USD, MOCK_PROV), expected);
        }
Exemple #2
0
 //-------------------------------------------------------------------------
 public virtual MultiCurrencyAmount currencyExposure(SwapPaymentEvent paymentEvent, RatesProvider provider)
 {
     // dispatch by runtime type
     if (paymentEvent is NotionalExchange)
     {
         return(notionalExchangePricer.currencyExposure((NotionalExchange)paymentEvent, provider));
     }
     else if (paymentEvent is FxResetNotionalExchange)
     {
         return(fxResetNotionalExchangePricer.currencyExposure((FxResetNotionalExchange)paymentEvent, provider));
     }
     else
     {
         throw new System.ArgumentException("Unknown PaymentEvent type: " + paymentEvent.GetType().Name);
     }
 }