### Question:
RatesCurveGroupId implements MarketDataId<RatesCurveGroup>, ImmutableBean, Serializable { public static RatesCurveGroupId of(String groupName) { return new RatesCurveGroupId(CurveGroupName.of(groupName), ObservableSource.NONE); } private  RatesCurveGroupId(
      CurveGroupName curveGroupName,
      ObservableSource observableSource); static RatesCurveGroupId of(String groupName); static RatesCurveGroupId of(CurveGroupName groupName); static RatesCurveGroupId of(CurveGroupName groupName, ObservableSource obsSource); @Override Class<RatesCurveGroup> getMarketDataType(); @Override String toString(); static TypedMetaBean<RatesCurveGroupId> meta(); @Override TypedMetaBean<RatesCurveGroupId> metaBean(); CurveGroupName getCurveGroupName(); ObservableSource getObservableSource(); @Override boolean equals(Object obj); @Override int hashCode();  }### Answer:
@Test public void coverage() { RatesCurveGroupId test = RatesCurveGroupId.of(GROUP1); coverImmutableBean(test); RatesCurveGroupId test2 = RatesCurveGroupId.of(GROUP2, OBS_SOURCE2); coverBeanEquals(test, test2); }
@Test public void test_serialization() { RatesCurveGroupId test = RatesCurveGroupId.of(GROUP1); assertSerialization(test); }