### Question:
DiscountingFxSingleProductPricer { public double forwardFxRateSpotSensitivity(ResolvedFxSingle fx, RatesProvider provider) { FxForwardRates fxForwardRates = provider.fxForwardRates(fx.getCurrencyPair()); double forwardRateSpotSensitivity = fxForwardRates.rateFxSpotSensitivity( fx.getReceiveCurrencyAmount().getCurrency(), fx.getPaymentDate()); return forwardRateSpotSensitivity; } DiscountingFxSingleProductPricer(
      DiscountingPaymentPricer paymentPricer); MultiCurrencyAmount presentValue(ResolvedFxSingle fx, RatesProvider provider); PointSensitivities presentValueSensitivity(ResolvedFxSingle fx, RatesProvider provider); double parSpread(ResolvedFxSingle fx, RatesProvider provider); MultiCurrencyAmount currencyExposure(ResolvedFxSingle product, RatesProvider provider); MultiCurrencyAmount currentCash(ResolvedFxSingle fx, LocalDate valuationDate); FxRate forwardFxRate(ResolvedFxSingle fx, RatesProvider provider); PointSensitivityBuilder forwardFxRatePointSensitivity(ResolvedFxSingle fx, RatesProvider provider); double forwardFxRateSpotSensitivity(ResolvedFxSingle fx, RatesProvider provider); static final DiscountingFxSingleProductPricer DEFAULT; }### Answer:
@Test public void test_forwardFxRateSpotSensitivity() { double computed = PRICER.forwardFxRateSpotSensitivity(FWD, PROVIDER); double df1 = PROVIDER.discountFactor(USD, PAYMENT_DATE); double df2 = PROVIDER.discountFactor(KRW, PAYMENT_DATE); assertThat(computed).isEqualTo(df1 / df2); }