### Question:
TenorAdjustment implements Resolvable<DateAdjuster>, ImmutableBean, Serializable { @Override public boolean equals(Object obj) { if (obj == this) { return true; } if (obj != null && obj.getClass() == this.getClass()) { TenorAdjustment other = (TenorAdjustment) obj; return JodaBeanUtils.equal(tenor, other.tenor) && JodaBeanUtils.equal(additionConvention, other.additionConvention) && JodaBeanUtils.equal(adjustment, other.adjustment); } return false; } private  TenorAdjustment(
      Tenor tenor,
      PeriodAdditionConvention additionConvention,
      BusinessDayAdjustment adjustment); static TenorAdjustment of(
      Tenor tenor,
      PeriodAdditionConvention additionConvention,
      BusinessDayAdjustment adjustment); static TenorAdjustment ofLastDay(Tenor tenor, BusinessDayAdjustment adjustment); static TenorAdjustment ofLastBusinessDay(Tenor tenor, BusinessDayAdjustment adjustment); LocalDate adjust(LocalDate date, ReferenceData refData); @Override DateAdjuster resolve(ReferenceData refData); @Override String toString(); static TenorAdjustment.Meta meta(); static TenorAdjustment.Builder builder(); @Override TenorAdjustment.Meta metaBean(); Tenor getTenor(); PeriodAdditionConvention getAdditionConvention(); BusinessDayAdjustment getAdjustment(); Builder toBuilder(); @Override boolean equals(Object obj); @Override int hashCode();  }### Answer:
@Test public void equals() { TenorAdjustment a = TenorAdjustment.of(TENOR_3M, LAST_DAY, BDA_FOLLOW_SAT_SUN); TenorAdjustment b = TenorAdjustment.of(TENOR_1M, LAST_DAY, BDA_FOLLOW_SAT_SUN); TenorAdjustment c = TenorAdjustment.of(TENOR_3M, PAC_NONE, BDA_FOLLOW_SAT_SUN); TenorAdjustment d = TenorAdjustment.of(TENOR_3M, LAST_DAY, BDA_NONE); assertThat(a.equals(b)).isEqualTo(false); assertThat(a.equals(c)).isEqualTo(false); assertThat(a.equals(d)).isEqualTo(false); }