code: def test_pv_zero_yields(self, dtype):
      yield_rates = [0.0, 0.0]
      # 2 and 3 year bonds with 1000 face value and 4%, 6% semi-annual coupons.
      cashflows = np.array(
          [20, 20, 20, 1020, 30, 30, 30, 30, 30, 1030], dtype=dtype
      )
      times = np.array(
          [0.5, 1, 1.5, 2, 0.5, 1, 1.50, 2, 2.5, 3], dtype=dtype
      )
      groups = np.array([0] * 4 + [1] * 6)
      expected_pvs = np.array([1080.0, 1180.0])
      actual_pvs = self.evaluate(
          tff.rates.analytics.cashflows.pv_from_yields(
              cashflows, times, yield_rates, groups=groups, dtype=dtype
          )
      )
      np.testing.assert_allclose(expected_pvs, actual_pvs)
  
file_path: tf-quant-finance/tf_quant_finance/rates/analytics/cashflows_test.py
imports: from absl.testing import parameterized
  import numpy
  import tensorflow.compat.v2
  import tf_quant_finance
  from tensorflow.python.framework import test_util
label_desc: Use image node_id 3 for calling the CashflowsTest obj's underlying member method code with example usage: obj.test_pv_zero_yields(dtype) without return types