### Question:
RateAccrualPeriod implements ImmutableBean, Serializable { public static RateAccrualPeriod.Builder builder(SchedulePeriod period) { return builder() .startDate(period.getStartDate()) .endDate(period.getEndDate()) .unadjustedStartDate(period.getUnadjustedStartDate()) .unadjustedEndDate(period.getUnadjustedEndDate()); } @ImmutableConstructor private  RateAccrualPeriod(
      LocalDate startDate,
      LocalDate endDate,
      LocalDate unadjustedStartDate,
      LocalDate unadjustedEndDate,
      double yearFraction,
      RateComputation rateComputation,
      double gearing,
      double spread,
      NegativeRateMethod negativeRateMethod);   RateAccrualPeriod(SchedulePeriod period, double yearFraction, RateComputation rateComputation);   RateAccrualPeriod(
      SchedulePeriod period,
      double yearFraction,
      RateComputation rateComputation,
      double gearing,
      double spread,
      NegativeRateMethod negativeRateMethod); static RateAccrualPeriod.Builder builder(SchedulePeriod period); static RateAccrualPeriod.Meta meta(); static RateAccrualPeriod.Builder builder(); @Override RateAccrualPeriod.Meta metaBean(); LocalDate getStartDate(); LocalDate getEndDate(); LocalDate getUnadjustedStartDate(); LocalDate getUnadjustedEndDate(); double getYearFraction(); RateComputation getRateComputation(); double getGearing(); double getSpread(); NegativeRateMethod getNegativeRateMethod(); Builder toBuilder(); @Override boolean equals(Object obj); @Override int hashCode(); @Override String toString();  }### Answer:
@Test public void coverage() { RateAccrualPeriod test = RateAccrualPeriod.builder() .startDate(DATE_2014_03_31) .endDate(DATE_2014_07_01) .unadjustedStartDate(DATE_2014_03_30) .unadjustedEndDate(DATE_2014_06_30) .yearFraction(0.25d) .rateComputation(GBP_LIBOR_3M_2014_03_28) .build(); coverImmutableBean(test); RateAccrualPeriod test2 = RateAccrualPeriod.builder() .startDate(DATE_2014_03_30) .endDate(DATE_2014_06_30) .unadjustedStartDate(DATE_2014_03_31) .unadjustedEndDate(DATE_2014_07_01) .yearFraction(0.26d) .rateComputation(GBP_LIBOR_3M_2014_03_27) .gearing(1.1d) .spread(0.25d) .negativeRateMethod(NOT_NEGATIVE) .build(); coverBeanEquals(test, test2); }
@Test public void test_serialization() { RateAccrualPeriod test = RateAccrualPeriod.builder() .startDate(DATE_2014_03_31) .endDate(DATE_2014_07_01) .unadjustedStartDate(DATE_2014_03_30) .unadjustedEndDate(DATE_2014_06_30) .yearFraction(0.25d) .rateComputation(GBP_LIBOR_3M_2014_03_28) .build(); assertSerialization(test); }