### Question:
DiscountingTermDepositTradePricer { public double parRate(ResolvedTermDepositTrade trade, RatesProvider provider) { return productPricer.parRate(trade.getProduct(), provider); } DiscountingTermDepositTradePricer(DiscountingTermDepositProductPricer productPricer); CurrencyAmount presentValue(ResolvedTermDepositTrade trade, RatesProvider provider); PointSensitivities presentValueSensitivity(ResolvedTermDepositTrade trade, RatesProvider provider); double parRate(ResolvedTermDepositTrade trade, RatesProvider provider); PointSensitivities parRateSensitivity(ResolvedTermDepositTrade trade, RatesProvider provider); double parSpread(ResolvedTermDepositTrade trade, RatesProvider provider); PointSensitivities parSpreadSensitivity(ResolvedTermDepositTrade trade, RatesProvider provider); MultiCurrencyAmount currencyExposure(ResolvedTermDepositTrade trade, RatesProvider provider); CurrencyAmount currentCash(ResolvedTermDepositTrade trade, RatesProvider provider); static final DiscountingTermDepositTradePricer DEFAULT; }### Answer:
@Test public void test_parRate() { double psTrade = PRICER_TRADE.parRate(RDEPOSIT_TRADE, IMM_PROV); double psProduct = PRICER_PRODUCT.parRate(RDEPOSIT_PRODUCT, IMM_PROV); assertThat(psTrade).isCloseTo(psProduct, offset(TOLERANCE_RATE)); }