### Question:
HullWhiteSwaptionPhysicalProductPricer { public MultiCurrencyAmount currencyExposure( ResolvedSwaption swaption, RatesProvider ratesProvider, HullWhiteOneFactorPiecewiseConstantParametersProvider hwProvider) { return MultiCurrencyAmount.of(presentValue(swaption, ratesProvider, hwProvider)); } HullWhiteSwaptionPhysicalProductPricer(DiscountingPaymentPricer paymentPricer); CurrencyAmount presentValue(
      ResolvedSwaption swaption,
      RatesProvider ratesProvider,
      HullWhiteOneFactorPiecewiseConstantParametersProvider hwProvider); MultiCurrencyAmount currencyExposure(
      ResolvedSwaption swaption,
      RatesProvider ratesProvider,
      HullWhiteOneFactorPiecewiseConstantParametersProvider hwProvider); PointSensitivityBuilder presentValueSensitivityRates(
      ResolvedSwaption swaption,
      RatesProvider ratesProvider,
      HullWhiteOneFactorPiecewiseConstantParametersProvider hwProvider); DoubleArray presentValueSensitivityModelParamsHullWhite(
      ResolvedSwaption swaption,
      RatesProvider ratesProvider,
      HullWhiteOneFactorPiecewiseConstantParametersProvider hwProvider); static final HullWhiteSwaptionPhysicalProductPricer DEFAULT; }### Answer:
@Test public void test_currencyExposure_afterMaturity() { MultiCurrencyAmount computedRec = PRICER.currencyExposure( SWAPTION_REC_LONG, RATES_PROVIDER_AFTER_MATURITY, HW_PROVIDER_AFTER_MATURITY); MultiCurrencyAmount computedPay = PRICER.currencyExposure( SWAPTION_PAY_SHORT, RATES_PROVIDER_AFTER_MATURITY, HW_PROVIDER_AFTER_MATURITY); assertThat(computedRec.size()).isEqualTo(1); assertThat(computedRec.getAmount(EUR).getAmount()).isCloseTo(0d, offset(NOTIONAL * TOL)); assertThat(computedPay.size()).isEqualTo(1); assertThat(computedPay.getAmount(EUR).getAmount()).isCloseTo(0d, offset(NOTIONAL * TOL)); }