PriceIndexCurveMultiplyFixedCurve implements PriceIndexCurve { @Override public double getPriceIndex(final Double timeToIndex) { return _curve.getPriceIndex(timeToIndex) * _fixedCurve.getYValue(timeToIndex); } PriceIndexCurveMultiplyFixedCurve(final String name, final PriceIndexCurve curve, 
      final DoublesCurve fixedCurve); @Override double getPriceIndex(final Double timeToIndex); @Override double getInflationRate(final Double firstTime, final Double secondTime); @Override double[] getPriceIndexParameterSensitivity(final double time); @Override int getNumberOfParameters(); @Override List<String> getUnderlyingCurvesNames(); @Override String getName(); @Override int getNumberOfIntrinsicParameters(Set<String> curvesNames); @Override int hashCode(); @Override boolean equals(final Object obj);  }
@Test public void getPriceIndex() { int nbTime = 25; for (int i = 0; i <= nbTime; i++) { assertEquals("PriceIndexCurveMultiplyFixedCurve: price index", UNDERLYING_CURVE.getPriceIndex(SEASONAL_STEPS[i]) * SEASONAL_CURVE.getYValue(SEASONAL_STEPS[i]), PI_CURVE.getPriceIndex(SEASONAL_STEPS[i]), TOLERANCE_INDEX); } }