### Question:
DiscountingBulletPaymentTradePricer { public CashFlows cashFlows(ResolvedBulletPaymentTrade trade, BaseProvider provider) { return paymentPricer.cashFlows(trade.getProduct().getPayment(), provider); } DiscountingBulletPaymentTradePricer(
      DiscountingPaymentPricer paymentPricer); DiscountingPaymentPricer getPaymentPricer(); CurrencyAmount presentValue(ResolvedBulletPaymentTrade trade, BaseProvider provider); ExplainMap explainPresentValue(ResolvedBulletPaymentTrade trade, BaseProvider provider); PointSensitivities presentValueSensitivity(ResolvedBulletPaymentTrade trade, BaseProvider provider); CashFlows cashFlows(ResolvedBulletPaymentTrade trade, BaseProvider provider); CurrencyAmount currencyExposure(ResolvedBulletPaymentTrade trade, BaseProvider provider); CurrencyAmount currentCash(ResolvedBulletPaymentTrade trade, BaseProvider provider); static final DiscountingBulletPaymentTradePricer DEFAULT; }### Answer:
@Test public void test_cashFlow_provider() { CashFlow expected = CashFlow.ofForecastValue(PAYMENT_DATE, USD, NOTIONAL_USD, DF); assertThat(PRICER.cashFlows(TRADE, PROVIDER)).isEqualTo(CashFlows.of(expected)); }
@Test public void test_cashFlow_provider_ended() { assertThat(PRICER.cashFlows(TRADE_PAST, PROVIDER)).isEqualTo(CashFlows.NONE); }