### Question:
IborFuture implements SecuritizedProduct, Resolvable<ResolvedIborFuture>, ImmutableBean, Serializable { public static IborFuture.Builder builder() { return new IborFuture.Builder(); } IborFuture(
      SecurityId securityId,
      Currency currency,
      double notional,
      double accrualFactor,
      LocalDate lastTradeDate,
      IborIndex index,
      Rounding rounding); LocalDate getFixingDate(); @Override ResolvedIborFuture resolve(ReferenceData refData); static IborFuture.Meta meta(); static IborFuture.Builder builder(); @Override IborFuture.Meta metaBean(); @Override SecurityId getSecurityId(); @Override Currency getCurrency(); double getNotional(); double getAccrualFactor(); LocalDate getLastTradeDate(); IborIndex getIndex(); Rounding getRounding(); Builder toBuilder(); @Override boolean equals(Object obj); @Override int hashCode(); @Override String toString();  }### Answer:
@Test public void test_builder_noIndex() { assertThatIllegalArgumentException() .isThrownBy(() -> IborFuture.builder() .securityId(SECURITY_ID) .notional(NOTIONAL) .currency(GBP) .lastTradeDate(LAST_TRADE_DATE) .rounding(ROUNDING) .build()); }
@Test public void test_builder_noLastTradeDate() { assertThatIllegalArgumentException() .isThrownBy(() -> IborFuture.builder() .securityId(SECURITY_ID) .notional(NOTIONAL) .currency(GBP) .index(GBP_LIBOR_2M) .rounding(ROUNDING) .build()); }