public void parSpreadCurveSensitivityIborSpreadIborSpreadBeforeFirstFixing() {
final ZonedDateTime referenceDate = DateUtils.getUTCDate(2012, 5, 14);
final Swap<Coupon, Coupon> swap = SWAP_IBORSPREAD_IBORSPREAD_DEFINITION.toDerivative(referenceDate, FIXING_TS_3_6, CURVE_NAMES);
final String fwdCurveName = ((CouponIborSpread) swap.getSecondLeg().getNthPayment(0)).getForwardCurveName();
InterestRateCurveSensitivity pscsComputed = swap.accept(PSCSC, CURVES);
pscsComputed = pscsComputed.cleaned();
final double[] timesDsc = new double[swap.getFirstLeg().getNumberOfPayments()];
for (int loopcpn = 0; loopcpn < swap.getFirstLeg().getNumberOfPayments(); loopcpn++) {
timesDsc[loopcpn] = swap.getFirstLeg().getNthPayment(loopcpn).getPaymentTime();
}
final List<DoublesPair> sensiDscFD = FDCurveSensitivityCalculator.curveSensitvityFDCalculator(swap, PSC, CURVES, swap.getFirstLeg().getDiscountCurve(), timesDsc, 1.0E-10);