### Question:
BillPosition implements
    SecuritizedProductPosition<Bill>, Resolvable<ResolvedBillTrade>, ImmutableBean, Serializable { public static BillPosition.Builder builder() { return new BillPosition.Builder(); } BillPosition(
      PositionInfo info,
      Bill product,
      double longQuantity,
      double shortQuantity); static BillPosition ofNet(PositionInfo positionInfo, Bill product, double netQuantity); static BillPosition ofLongShort(
      PositionInfo positionInfo,
      Bill product,
      double longQuantity,
      double shortQuantity); @Override SecurityId getSecurityId(); @Override Currency getCurrency(); @Override @DerivedProperty double getQuantity(); @Override BillPosition withInfo(PortfolioItemInfo info); @Override BillPosition withQuantity(double quantity); @Override PortfolioItemSummary summarize(); @Override ResolvedBillTrade resolve(ReferenceData refData); static BillPosition.Meta meta(); static BillPosition.Builder builder(); @Override BillPosition.Meta metaBean(); @Override PositionInfo getInfo(); @Override Bill getProduct(); double getLongQuantity(); double getShortQuantity(); Builder toBuilder(); @Override boolean equals(Object obj); @Override int hashCode(); @Override String toString();  }### Answer:
@Test public void coverage() { BillPosition test1 = BillPosition.builder() .info(POSITION_INFO1) .product(PRODUCT1) .longQuantity(QUANTITY1) .build(); coverImmutableBean(test1); BillPosition test2 = BillPosition.builder() .info(POSITION_INFO2) .product(PRODUCT2) .shortQuantity(QUANTITY1) .build(); coverBeanEquals(test1, test2); }
@Test public void test_serialization() { BillPosition test = BillPosition.builder() .info(POSITION_INFO1) .product(PRODUCT1) .longQuantity(QUANTITY1) .build(); assertSerialization(test); }