private void assertPutCallParity(final double strike, final Expiry expiry, final double r, final double b, final double sigma, final double spot) {
final Set<Greek> greeks = Collections.singleton(Greek.FAIR_PRICE);
final EuropeanVanillaOptionDefinition call = new EuropeanVanillaOptionDefinition(strike, expiry, true);
final EuropeanVanillaOptionDefinition put = new EuropeanVanillaOptionDefinition(strike, expiry, false);
final StandardOptionDataBundle data = new StandardOptionDataBundle(YieldCurve.from(ConstantDoublesCurve.from(r)), b, new VolatilitySurface(ConstantDoublesSurface.from(sigma)), spot, DATE);
final GreekResultCollection callResult = MODEL.getGreeks(call, data, greeks);
final GreekResultCollection putResult = MODEL.getGreeks(put, data, greeks);
final Double c = callResult.values().iterator().next();
final Double p = putResult.values().iterator().next();
final double t = call.getTimeToExpiry(DATE);