public virtual void test_getter() { assertEquals(VOLS.ValuationDate, VAL_DATE); assertEquals(VOLS.Index, GBP_LIBOR_3M); assertEquals(VOLS.Surface, SURFACE); assertEquals(VOLS.ParameterCount, TIME.size()); assertEquals(VOLS.findData(CURVE.Name).get(), CURVE); assertEquals(VOLS.findData(SURFACE.Name).get(), SURFACE); assertFalse(VOLS.findData(CurveName.of("foo")).Present); int nParams = VOLS.ParameterCount; double newValue = 152d; for (int i = 0; i < nParams; ++i) { assertEquals(VOLS.getParameter(i), SURFACE.getParameter(i)); assertEquals(VOLS.getParameterMetadata(i), SURFACE.getParameterMetadata(i)); assertEquals(VOLS.withParameter(i, newValue), ShiftedBlackIborCapletFloorletExpiryStrikeVolatilities.of(GBP_LIBOR_3M, VAL_DATE_TIME, SURFACE.withParameter(i, newValue), CURVE)); assertEquals(VOLS.withPerturbation((n, v, m) => 2d * v), ShiftedBlackIborCapletFloorletExpiryStrikeVolatilities.of(GBP_LIBOR_3M, VAL_DATE_TIME, SURFACE.withPerturbation((n, v, m) => 2d * v), CURVE)); } }
//------------------------------------------------------------------------- public virtual void coverage() { BlackBondFutureExpiryLogMoneynessVolatilities test1 = BlackBondFutureExpiryLogMoneynessVolatilities.of(VAL_DATE_TIME, SURFACE); coverImmutableBean(test1); BlackBondFutureExpiryLogMoneynessVolatilities test2 = BlackBondFutureExpiryLogMoneynessVolatilities.of(VAL_DATE_TIME.plusDays(1), SURFACE.withParameter(0, 1d)); coverBeanEquals(test1, test2); }